回答

收藏

如何在 Git 中克隆所有远程分支

技术问答 技术问答 308 人阅读 | 0 人回复 | 2023-09-12

我有一个master和一个development所有的分支都被推到了GitHub。我已经cloned、pulled 和fetched,但我还是得不到master分支以外的任何东西。+ H+ l5 b" `1 ~$ i
我确定我错过了一些明显的东西,但我已经读了手册,但我一点也不高兴。
9 t% G! E( P- y! N' \, h                                                               
" p: Z: u! ]& i" k  `9 |0 x+ j    解决方案:                                                                ' Y+ m* r. _8 X4 [5 a* I- ?/ C: d4 m
                                                                首先,克隆远程Git存储库并cd到其中:1 N) L" q  B1 ^# x9 W! ^1 L4 Z
$ git clone git://example.com/myproject$ cd myproject接下来,检查仓库中的本地分支:# ~# x9 G3 e. ^! q8 A
$ git branch* master但是还有其他分支隐藏在您的存储库中!您可以使用-a查看这些标志:) t, F- b6 \4 h$ z6 Z' g
$ git branch -a* master  remotes/origin/HEAD  remotes/origin/master  remotes/origin/v1.0-stable  remotes/origin/experimental如果只想快速浏览上游分支,可以直接查看:
6 M2 x: {; l7 d1 ?$ git checkout origin/experimental但如果你想在那个分支工作,你需要创建一个本地跟踪分支,它可以通过以下方式自动完成:
9 s1 Y. E8 J( h/ n' ~$ git checkout experimental你会看到
: w) G3 x$ ?8 ~: {Branch experimental set up to track remote branch experimental from origin.Switched to a new branch 'experimental'在这里,新分支只表示该分支是从索引中取出并在当地为您创建的。前一行告诉你,分支正在设置跟踪远程分支,这通常意味着 origin/branch_name 分支。
% ~6 d# _/ V! X% x, x' y0 n现在,如果您查看当地的分支机构,您将看到以下内容:5 }3 X0 T2 m4 e
$ git branch* experimental  master其实你可以用git remote.$ Y' ?+ T+ g/ v; h( @4 S! j
$ git remote add win32 git://example.com/users/joe/myproject-win32-port$ git branch -a* master  remotes/origin/HEAD  remotes/origin/master  remotes/origin/v1.0-stable  remotes/origin/experimental  remotes/win32/master  remotes/win32/new-widgets在这一点上,事情变得非常疯狂,所以运行gitk看看发生了什么:/ ^" _# O: _% R9 n; k' l
$ gitk --all &
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则