代码之家  ›  专栏  ›  技术社区  ›  markovuksanovic

使用git svn签出远程分支

  •  180
  • markovuksanovic  · 技术社区  · 14 年前

    我已经使用git svn签出了一个svn存储库。现在我需要检查其中一个分支并跟踪它。哪种方法最好?

    1 回复  |  直到 11 年前
        1
  •  339
  •   Community TheSoundDefense    7 年前

    标准子版本布局

    创建的Git克隆,包括子版本主干、标记和分支

    git svn clone http://svn.example.com/project -T trunk -b branches -t tags

    这个 --stdlayout 如果您的Subversion存储库使用典型结构,则选项是一个很好的快捷方式:

    git svn clone http://svn.example.com/project --stdlayout

    使您的Git存储库忽略Subversion Repo所做的一切:

    git svn show-ignore >> .git/info/exclude

    现在您应该可以看到Git端的所有颠覆分支:

    git branch -r

    说颠覆分支的名字是 waldo . 在吉特这边,你会跑的

    git checkout -b waldo-svn remotes/waldo

    -svn后缀是为了避免表单的警告

    warning: refname 'waldo' is ambiguous.

    更新git分支 waldo-svn 运行

    git checkout waldo-svn
    git svn rebase

    从仅限行李厢的结帐处开始

    要将Subversion分支添加到仅主干克隆,请修改Git存储库的 .git/config 遏制

    [svn-remote "svn-mybranch"]
            url = http://svn.example.com/project/branches/mybranch
            fetch = :refs/remotes/mybranch

    你需要养成跑步的习惯

    git svn fetch --fetch-all

    更新所有内容 git svn 思想是分开的遥控器。此时,您可以如上所述创建和跟踪分支。例如,要创建与MyBranch对应的Git分支,请运行

    git checkout -b mybranch-svn remotes/mybranch

    你打算从哪个分支机构 git svn dcommit 保持他们的历史线性!


    更多信息

    你也可能对阅读 answer to a related question .