将git与svn结合使用
我必须使用svn作为源代码管理工具,但我希望在本地使用git分支。我想知道它是否可以毫无问题地工作,最好的方法是什么。我读过关于“git svn”的文章,但看起来我必须同步整个svn repositoy才能使用它。这不是一个选择。假设我是唯一的开发人员(不是开发人员之间的git推/拉),并且只想“本地”使用git。最好的方法是什么?在我本地签出的项目上只是“git init”?在同一文件夹中使用这两种工具?有更好的方法吗 使用将git与svn结合使用,svn,git,git-svn,Svn,Git,Git Svn,我必须使用svn作为源代码管理工具,但我希望在本地使用git分支。我想知道它是否可以毫无问题地工作,最好的方法是什么。我读过关于“git svn”的文章,但看起来我必须同步整个svn repositoy才能使用它。这不是一个选择。假设我是唯一的开发人员(不是开发人员之间的git推/拉),并且只想“本地”使用git。最好的方法是什么?在我本地签出的项目上只是“git init”?在同一文件夹中使用这两种工具?有更好的方法吗 使用git svn。您不必同步整个存储库,只需同步特定的分支,就可以跳过旧
git svn
。您不必同步整个存储库,只需同步特定的分支,就可以跳过旧的历史记录。但是,您需要同步所选分支上的所有修订。如果没有这一点,它的用处会小得多。您不需要同步整个存储库。您可以克隆所需的模块:
git svn clone --stdlayout http://myrepo/module
这将拉下该模块的整个历史记录。您只需抓住头部
:
git svn clone --stdlayout -r HEAD http://myrepo/module
我大部分时间都是这样工作的
关于
git svn
工作流,有很多相关问题。。。只需按照此答案右侧的链接进行操作:-)您不必克隆整棵树,只需进行浅层克隆即可。请参见“我读到了关于‘git svn’的文章,但似乎我必须同步整个svn repositoy才能使用它。这不是一个选项。”为什么不呢?信不信由你,.git
文件夹通常比所有.svn
文件夹加起来占用的空间少。最糟糕的部分是花在原始克隆上的时间,因此您可能希望在晚上或周末这样做。如果您真的不想这样做,您可以使用-r
进行“浅克隆”,如本问题所述:是的,您可以在同一文件夹中使用这两种工具。只需确保将.svn/
放在.gitignore
中,并将.git
和.gitignore
放在svn:ignore
属性中,这样两个工具就不会显示彼此的元数据。