[英]Git command: what is the difference between git checkout -b <branch> <remote branch> and git branch <branch> <remote branch>?
[英]What's the difference between git checkout <remote>/<branch> vs git checkout <branch>?
git checkout <remote>/<branch>
與git checkout <branch>
什么區別? 什么時候需要使用git checkout <remote>/<branch>
?
要了解的關鍵是遠程分支是名稱為<remote>/<branch>
普通分支 。 它們只是指向提交的引用(標簽)。 主要區別是您不能致力於它們。
為什么要簽出遠程分支機構? 要檢查上游項目的狀態,可以嘗試構建它。 否則,您不會。
引用遠程分支有很多用途。
git diff remote/branch
查看分支和遠程之間的區別。 git log remote/branch..HEAD
查看遠程更改。 git branch -f branch remote/branch
丟棄所有本地更改。 git checkout <remote>/<branch>
將檢出git rev-parse refs/remotes/<remote>/<branch>
解析為的提交,並使您處於“分離頭”狀態。
git checkout <branch>
將簽出給定的本地分支,或者根據您的配置,可能會自動創建一個名為<branch>
的本地分支,該分支將設置為為您跟蹤<remote>/<branch>
,然后簽出該本地分支。 它不會使您處於“分離的HEAD”狀態,而是處於本地分支(除非由於某種原因而失敗,例如您已將其配置為不自動創建分支,並且命名分支不存在)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.