2012-11-02 210 views
0

今天我尝试跟踪远程分支(具体Mapbox-IOS-SDK的23标注远程Git分支

那么,什么是以下三个命令之间的区别:

git checkout remotes/origin/23-callouts

git checkout -b remotes/origin/23-callouts

git checkout -b 23-callouts remotes/origin/23-callouts

第一个命令给了我一个 “(无分支)” 我的塞康d命令实际上是我在第三条命令的意图所在的地方犯的一个错误,我很惊讶它发生了,我不知道发生了什么。第三个命令会给我所谓的“远程追踪分支”,但这与第二个或第一个有什么不同?我也看到“git checkout -track”和第三个命令是一样的吗?

回答

1

您可以通过git help checkout & git help branch

git checkout remotes/origin/23-callouts 

尝试找到了答案检出名为 '遥控器/产地/ 23-标注' 一个本地分支,所以这是不是你想要

git checkout -b remotes/origin/23-callouts 

尝试在HEAD上创建一个名为“遥控器/原点/ 23-callouts”的新本地分支。所以这不是你想要的。

git checkout -b 23-callouts remotes/origin/23-callouts 

尝试根据遥控分支创建一个名为'23 -callouts'的新本地分支。所以这是正确的

git checkout --track,它几乎是相同的,因为你有一个本地分支与远程跟踪,唯一的区别是本地分支的名称。

git checkout --track remotes/origin/23-callouts 

与第三个命令相同。在当地的分行被命名为23标注

通过第三个命令,你可以通过改变帕拉姆后-b

+0

所以,对于第2个命令,改变当地的分支机构的名称,尽管名称是“遥控器/产地/ 23-callouts“,它与远程无关? – huggie

+0

@huggie正确。 –