我是git的新手,并且有一个subversion存储库,我希望能够偶尔导入到git存储库(用于部署).所以我想使用svn执行大多数更新,但是想看看将它推送到git的最佳方式是什么(只是默认/主分支).
我知道你只想导入svn存储库的master/trunk分支,但我想提一下svn2git,以便将你的svn导入git存储库.
这比git svn clone在svn中有这个代码更好 :
trunk
...
branches
1.x
2.x
tags
1.0.0
1.0.1
1.0.2
1.1.0
2.0.0
Run Code Online (Sandbox Code Playgroud)
git-svn将通过提交历史记录来构建一个新的git repo.
它将所有分支和标签导入为远程svn分支,而你真正想要的是git-native本地分支和git标记对象.
因此,在导入此项目后,您将获得:
$ git branch
* master
$ git branch -a
* master
1.x
2.x
tags/1.0.0
tags/1.0.1
tags/1.0.2
tags/1.1.0
tags/2.0.0
trunk
$ git tag -l
[ empty ]
Run Code Online (Sandbox Code Playgroud)
在你的项目完成svn2git后,你会得到这个:
$ git branch
* master
1.x
2.x
$ git tag -l
1.0.0
1.0.1
1.0.2
1.1.0
2.0.0
Run Code Online (Sandbox Code Playgroud)
最后,它确保master的HEAD与svn repo的当前主干相同.