我正在使用Git SVN插件与SVN版本库一起工作,每次执行git fetch命令时,它会获取整个SVN版本库所有分支的更改。这个过程很耗时,尤其是在多个分支上进行了许多提交后,几小时才能完成。
我能否告诉它仅获取特定分支的更改?
我正在使用Git SVN插件与SVN版本库一起工作,每次执行git fetch命令时,它会获取整个SVN版本库所有分支的更改。这个过程很耗时,尤其是在多个分支上进行了许多提交后,几小时才能完成。
我能否告诉它仅获取特定分支的更改?
您可以使用git svn fetch --parent
命令获取与当前HEAD对应的远程分支。
遗憾的是,无法从单个远程Subversion分支中获取,除非它是父分支。但是,您可以在后台启动git svn fetch
命令;这不会影响您的工作副本。我已经设置了我的电脑,在晚上使用cron
自动执行获取操作。
git
将所有 SVN 标签、分支和主干导入到类似于 git
的结构中。git svn --tags PATH_TO_YOUR_TAGS --branches PATH_TO_YOUR_BRANCHES --trunk PATH_TO_YOUR_TRUNK svn+ssh://path.to.your.svn/repository
这将需要很长时间。之后,工作流程类似于 git
。您可以像在 git
中一样提交和创建分支,然后...
提交到 SVN:
git svn dcommit
从SVN检出:(在diff中)
git svn rebase