我尝试git-svn的动机是毫不费力的合并和分支.然后我注意到男人git-svn(1)说:
不建议在您计划提交的分支上运行git-merge或git-pull.Subversion不以任何合理或有用的方式表示合并; 因此使用Subversion的用户无法看到您所做的任何合并.此外,如果您从作为SVN分支镜像的git分支合并或拉出,则dcommit可能会提交到错误的分支.
这是否意味着我无法从svn/trunk(或分支)创建本地分支,破解,合并回svn/trunk,然后dcommit?我知道svn用户会看到同样的混乱,在svn pre 1.5.x中一直是合并,但是还有其他缺点吗?最后一句也让我担心.人们经常做这些事吗?
我现在正在使用git-svn以下工作流程
git clone <SVN TRUNK URL> #done once
Run Code Online (Sandbox Code Playgroud)
随后当我处理一个功能时
git branch featureZ
git checkout featureZ
#make edits for featureZ
git commit
git checkout master
git svn rebase # fetch changes from server
git checkout featureZ #go back to branch
#git merge master
git rebase master #get the changes from SVN->master onto the branch now. Optional if I want the branch to be current. (EDITED: Got from the answer given below)
#make edits for featureZ
git commit #featureZ completed
git checkout …
Run Code Online (Sandbox Code Playgroud)