回答

收藏

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

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

我有一个master和一个development所有的分支都被推到了GitHub。我已经cloned、pulled 和fetched,但我还是得不到master分支以外的任何东西。
! ^. k* H8 [( x, q2 f& d8 [我确定我错过了一些明显的东西,但我已经读了手册,但我一点也不高兴。6 Q; E5 Q' t( Z# G+ c, e  D1 k6 B! i
                                                               
( `9 K8 I$ i5 ~! B9 N) c    解决方案:                                                               
# H7 ^6 h+ \7 y6 o; l' b                                                                首先,克隆远程Git存储库并cd到其中:$ c4 @4 s3 \, M8 R( P4 |5 L4 ~
$ git clone git://example.com/myproject$ cd myproject接下来,检查仓库中的本地分支:- P: P3 F! r0 q! G# h
$ git branch* master但是还有其他分支隐藏在您的存储库中!您可以使用-a查看这些标志:
$ Q6 a" d" B4 s$ b$ git branch -a* master  remotes/origin/HEAD  remotes/origin/master  remotes/origin/v1.0-stable  remotes/origin/experimental如果只想快速浏览上游分支,可以直接查看:% K- N7 P/ U! W7 x# H* }$ P: l
$ git checkout origin/experimental但如果你想在那个分支工作,你需要创建一个本地跟踪分支,它可以通过以下方式自动完成:% i9 I/ b7 c/ {, ~7 d" E4 e
$ git checkout experimental你会看到' G# ^' Q6 U: T5 v7 O: _* w
Branch experimental set up to track remote branch experimental from origin.Switched to a new branch 'experimental'在这里,新分支只表示该分支是从索引中取出并在当地为您创建的。前一行告诉你,分支正在设置跟踪远程分支,这通常意味着 origin/branch_name 分支。7 [8 n5 e" N, X6 ^
现在,如果您查看当地的分支机构,您将看到以下内容:& g" ~* N7 s: t$ B) w) I" M
$ git branch* experimental  master其实你可以用git remote.' u) N& k! o; g5 e6 r3 z7 a9 F
$ 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看看发生了什么:
4 ]. \$ h/ ^2 Y3 v" u  u/ {$ gitk --all &
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则