我想在一个git存储库中跟踪几个subversion存储库。我设法让git svn将所有subversion存储库提取到他们自己的远程分支中。所以现在
$ git branch -a
master
remotes/svn/Project1
remotes/svn/Project2
remotes/svn/Project3
哪个好看。现在我想将所有这些分支合并到master中,但是在子目录中它们都包含类似的命名文件。我试图检查一个分支,将文件移动到子目录,提交然后合并到主服务器。但这会导致错误:
remote: error: refusing to update checked out branch: refs/heads/CPSP
remote: error: By default, updating the current branch in a non-bare repository
...
将此归档的正确方法是什么?为了清楚起见,我想最终得到一个如下所示的存储库:
Project1/
Project2/
Project3/
为了说清楚,这些目录在subversion存储库中不存在。
我打算只跟踪subversion存储库,而不是提交它们(虽然这样会很好) TNX!
答案 0 :(得分:0)
我担心简单的git操作你无法实现这一点。
如果你认为git存储库是一个内容树,在任何时候,它只能有1个快照。因此,如果您在不同的远程分支下映射多个svn存储库,您将永远不会同时看到它们。
如果你真的想看到同一类型的文件夹,下面的方法可能会让你的痛苦有所缓解:
通过上面的方式,实际上你可以完全访问svn,甚至提交。缺点是你不能直接从父文件夹使用任何git命令。