“git push的目的是什么?

AFAIK,git在输入以下命令时执行以下操作:

“git push -u origin master”:

  • Git检查主分支是否位于远程仓库。 如果没有,它会创建它。
  • Git决定本地分支和远程分支之间的差异。 Git更新远程分支中的“diff”。
  • Git还会在名为“origin / master”的本地机器上创建一个新的REMOTE TRACKING分支来跟踪远程分支。
  • Git会将名为“master”的非跟踪分支设置为跟踪分支(以便跟踪“origin / master”)。
  • 这将导致3个分支存在:

  • 在我的本地机器中追踪名为“master”的分支(追踪origin / master)。
  • 远程跟踪分支在本地机器中名为“origin / master”。
  • 在远程存储库中名为“master”的远程分支“
  • 它是否正确?

    重新编辑:假定主分支存在于本地机器中。

    提前致谢。


    在推送之前, master分支必须存在。
    这意味着至少一个提交必须在新创建的回购库中完成(正如我在“为什么需要明确推送新分支?”中所解释的)。

    然后创建远程追踪分支origin/master和远程上游回购的主分支。

    到了第4点(因为master已经存在),所创建的是本地分支master和上游分支(因此-u--upstream-to选项)在.gitconfig origin/master.gitconfig

    [branch "master"]
           remote = origin
           merge = refs/heads/master
    

    从讨论:

    所以如果我可以让master分支直接跟踪一个远程分支,我会得到什么好处:

    master ”指向“ origin/master ”指向“remote master ”?

    拥有这个额外的中间商分支有什么好处?

    你确实可以用git push https://<login>@github.com/<login>/<repo> master:master.直接推送到远程分支git push https://<login>@github.com/<login>/<repo> master:master.

    正式建立本地分支master和远程跟踪origin/masterorigin/master )之间的跟踪关系的好处是记录( git pull )到哪里( git push )或从哪里合并( git pull )。

    链接地址: http://www.djcxy.com/p/26113.html

    上一篇: What is the purpose of "git push

    下一篇: Deleting remote branches?