如何将新的本地分支推送到远程Git存储库并进行跟踪?

我希望能够做到以下几点:

  • 根据其他(远程或本地)分支创建本地分支(通过git branchgit checkout -b

  • 将本地分支推送到远程存储库(发布),但将其设置为可跟踪,以便git pullgit push将立即生效。

  • 我怎么做?

    我知道Git 1.7中的--set-upstream ,但这是一个创建后操作。 将分支推送到远程存储库时,我想找到一种方法来进行类似的更改。


    在Git 1.7.0及更高版本中,您可以签出新的分支:

    git checkout -b <branch>
    

    编辑文件,添加和提交。 然后用-u (简称--set-upstream )选项推送:

    git push -u origin <branch>
    

    Git会在推送过程中设置跟踪信息。


    如果您不与其他人共享您的回购,这对将所有分行推送至远程设备以及为您正确设置--set-upstream跟踪非常有用:

    git push --all -u
    

    (不完全是OP所要求的,但是这个一行很受欢迎)

    如果你与他人分享你的回购,这不是一个好的形式,因为你会用你所有的狡猾的实验分支堵塞回购。


    在引入git push -u ,没有git push选项来获得你想要的东西。 你必须添加新的配置语句。

    如果您使用以下方式创建新分支:

    $ git checkout -b branchB
    $ git push origin branchB:branchB
    

    您可以使用git config命令来避免直接编辑.git/config文件。

    $ git config branch.branchB.remote origin
    $ git config branch.branchB.merge refs/heads/branchB
    

    或者您可以手动编辑.git/config文件以获得该分支的跟踪信息。

    [branch "branchB"]
        remote = origin
        merge = refs/heads/branchB
    
    链接地址: http://www.djcxy.com/p/81.html

    上一篇: How do I push a new local branch to a remote Git repository and track it too?

    下一篇: Change the URI (URL) for a remote Git repository