【发布时间】:2019-01-19 21:03:42
【问题描述】:
我正在尝试了解我的以下情况:
我和其他人正在使用 Github 中的一个项目。我相信它除了 master 之外还有几个分支(特别是“develop”)
所以我使用git clone <url> 将项目克隆到我的计算机上
我得到了这个项目。我被告知我应该使用开发分支而不是使用主分支
所以我输入git branch 看看那里有什么分支,我得到了
$ git branch
* master
什么?开发分支在哪里?
尽管如此,我还是 git checkout develop,瞧!我现在在开发分支!我再次git branch,我可以看到
$ git checkout develop
Branch develop set up to track remote branch develop from origin.
Switched to a new branch 'develop'
$ git branch
* develop
master
这里发生了什么黑暗魔法?它说开发被设置为从原点跟踪开发!所以在那个发展被隐藏之前?遥不可及?
在完成git log --oneline --decorate 之后,我可以看到 origin/develop 分支,但是这里发生了什么??
【问题讨论】:
-
git clone为每个分支存储库创建远程跟踪分支。 -
是的,如果您只想克隆一个分支,请查看this SO answer。
-
@Maroun 所以我必须使用
git branch -a来查看所有内容并结帐到我想使用的那个? -
@KansaiRobot 是的。
-
@KansaiRobot 当您使用
git branch -a时,如果您的遥控器碰巧没有命名为origin,则遥控器将以remotes/origin或remotes/<somethingElse>为前缀(毕竟这只是一个约定,即使很常用)。如果您想创建一个跟踪远程版本的本地版本,请不要git checkout remotes/origin/myBranch,而是git checkout myBranch。
标签: git github git-branch git-clone