我有一个/foo/bar大型提交历史和多个分支的git repo .
我现在想要/foo/baz处于相同的回购中/foo/bar,这(我认为)意味着我需要创建一个新的回购/foo.但是,我想保留我所做的变化的历史/foo/bar.
我首先想到的是git format-patch,然后是apply,但是不保留提交消息.
我有一个名为"www"的子目录,它是一个回购:
site
|-- www/
| |-- .git/
| |-- index.html
|-- design/
| |-- images.jpg
Run Code Online (Sandbox Code Playgroud)
我想将repo更改为父目录,以便repo结构镜像原始文件结构,如下所示:
site
|-- .git/
|-- www/
| |-- index.html
|-- design/
| |-- images.jpg
Run Code Online (Sandbox Code Playgroud)
可以这样做吗?那么将更改推向Gitlab会有什么影响吗?
我的本地 git 存储库如下所示
C:\MyRepo
\MyProject
\.git
\ProjectFolder1
\ProjectFolder2
\ProjectFolder3
Run Code Online (Sandbox Code Playgroud)
现在我想添加几个需要直接在“MyRepo”下并且需要属于同一个存储库的文件夹。我想这意味着 .git 文件夹也应该直接放在“MyRepo”下
C:\MyRepo
\.git
\NewFolder1
\NewFolder2
\MyProject
\ProjectFolder1
\ProjectFolder2
\ProjectFolder3
Run Code Online (Sandbox Code Playgroud)
如何在不丢失历史记录的情况下将 .git 文件夹上移一个级别?
我使用的是 Windows 操作系统,git 版本是 2.6.3.windows.1
我在一个解决方案下有多个项目,我想将它们添加到 Visual Studio 团队服务上的同一个 Git 存储库中。
例如在我的解决方案中:
由于前两个项目完全依赖于第三个项目,我想将它们添加到同一个存储库中。
我正在使用 Visual Studio 2015 和 Git。这些也是 MVC、C# 项目。
是否可以在同一个 Visual Studio Team Services 存储库中拥有来自单个解决方案的多个项目?
如果没有,我似乎无法将任何项目上传到不同的存储库(来自同一解决方案),这可能吗?
我最终希望避免在开发时需要切换解决方案。
我有一个包含两个主要分支的 Git 存储库:master 和 dev。它目前看起来像这样:
master ( )----( )----(A)----(B)----(C)
\
\
dev ( )----( )----( )----( )----(~ 30 additional commits...)
Run Code Online (Sandbox Code Playgroud)
非常简单,除了master上的 commit A包含对文件和文件夹结构的重大更改(基本上,我使用此处显示的步骤将存储库在层次结构中向上移动了一层)。
我想继续在 dev 分支上工作,但是当我尝试将 dev 变基到 master 以将新的文件结构引入 dev 时,Git 出现了大量错误。我git reset回到了一个理智的状态,但在我(有些有限)的 Git 经验中,许多错误通常意味着我采取了错误的方法。
有没有更好的方法将重新组织的文件夹结构转移到 dev 分支?如果有帮助,主(B和C)上的其他提交中的更改非常小,如果丢失它们会使事情变得更容易,我可以接受。