2008-10-06 30 views
1

我们的svn仓库有很多分支机构都是分支机构。这对svn可以正常工作,因为我可以在工作副本的正确位置检出该子树。但是,如果我使用git签出同一分支,我只会得到一个只包含分支子树的工作副本。是否有可能让git重新定位分支,以便我的工作副本结构是相同的,无论我在主干还是分支上?在签出时可以让git svn“重新定位”分支文件吗?

我认识到,我们的SVN做法总是对整个树工作的git的理念冲突。人们如何处理这个问题?

回答

3

如果可能的话,修复它在服务器端:Subversion在分支时不会复制数据(svn copy),它只是硬链接,所以确实没有明显的理由只分支出一棵子树。

如果这是不可行的,你应该看看http://help.github.com/subtree-merge/ - 它可以做的伎俩,但我还没有尝试过自己。他基本上是描述一个替代的Git子模块,在那里你只是自动远程合并(在这种情况下,你的Subversion分支)到子目录中,而不是存储库的根目录。

+0

子树合并策略取得了诀窍。 – 2008-10-07 06:11:04

1

我从来没有使用svn的是这样的,如果你已经得到了沉默是任何迹象那么它是一种罕见的做法。你能否以这种方式做某些事情的理由,或者通过描述它解决什么问题?这样我们可以更好地判断什么是可接受的解决方案。

+0

我认为这是一个不好的做法,其实。这正是我们所做的,但它主要造成问题和困惑。无论如何,子树合并策略似乎帮助我在git方面做到了正确。 – 2008-10-07 06:10:25

相关问题