我使用git克隆了我的svn repo,指定了branches和trunk(没有涉及标签)。然后,我运行了一个有限范围的修订。现在,我有:
$ git branch
* master
和
$ git branch -r
version-2.3.1
version-2.3.2
version-2.3.3
trunk
所以,我明白这些分支是远程分支,我确实读过http://git-scm.com/book/en/Git-Branching-Remote-Branches,但因为远程分支对我来说是新的,所以我很难理解如何在svn上下文中使用这些知识。此链接中的一个人How to switch svn branches using git-svn?表示只是这样做:
git reset --hard remotes/branch
git checkout branch
etc
但是第二个命令“git checkout branch”不适用于我,因为我没有任何本地分支......
所以,既然我已经有了一堆与svn分支对应的远程分支,那么“svn切换”到其中一个分支的推荐工作流程是什么,dcommit'ing,然后“svn switch”返回到另一个分支?我从不使用树干,我总是在树枝上工作。
答案 0 :(得分:2)
现在你在主分公司,你只是:
git reset --hard version-2.3.3
然后您的主分支与远程分支版本-2.3.3相同。
创建另一个分支:
git checkout -b local-version-2.3.1
git reset --hard version-2.3.1
然后创建一个名为local-version-2.3.1的新分支,它与远程分支版本-2.3.1相同。
祝你好运。