我在Github上有一个存储库。它包含主和一个分支。
当我克隆它时,我只获得了主人而没有看到我的分支 为什么会这样?如何查看存储库中的所有分支?
答案 0 :(得分:87)
默认情况下,git clone
只创建一个分支:当前签出的分支,通常是主分支。但是,它确实为远程中的所有其他分支创建了远程跟踪分支。可以将它们视为远程分支的本地副本,可以通过获取来更新。它们不是真正的本地分支,因为它们仅用作指向远程分支所在的指针,而不是你的工作。
如果您运行git branch -a
,您将看到所有分支机构,本地和远程分支机构。如果您只想查看远程的,请使用git branch -r
。如果您更喜欢可视化历史记录显示,请尝试gitk --all
(或gitk --remotes
)。
要创建要处理的本地分支,请使用
git branch <branch-name> origin/<branch-name>
这将使用远程分支作为起点创建一个新的本地分支。
答案 1 :(得分:14)
使用:
git branch -r
这将显示所有远程分支。然后你可以这样做:
git branch -t my_local_branch origin/remote_branch
git checkout my_local_branch
然后完成你的工作,然后推送到远程分支。
答案 2 :(得分:13)
你可以直接做:
git checkout <original-remote-branch-name>
这会自动创建一个本地分支,用于跟踪具有相同名称的远程分支。 如果您想在除master之外的特定分支上工作,请始终在克隆之后执行此操作。
注意:默认情况下克隆远程名称&#39; origin&#39;这与您正在开发的其他计算机中使用的远程名称不同。因此,您可以在克隆之前对遥控器进行初始命名,或者在之后推送到原点。