首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将所有远程git分支作为本地分支进行跟踪

将所有远程git分支作为本地分支进行跟踪
EN

Stack Overflow用户
提问于 2008-12-18 20:11:56
回答 9查看 87.2K关注 0票数 198

将单个远程分支作为本地分支进行跟踪非常简单。

代码语言:javascript
复制
$ git checkout --track -b ${branch_name} origin/${branch_name}

将所有本地分支推送到远程,根据需要创建新的远程分支也很容易。

代码语言:javascript
复制
$ git push --all origin

我想做相反的事情。如果我在一个源上有X个远程分支:

代码语言:javascript
复制
$ git branch -r 
branch1
branch2
branch3
.
.
.

我是否可以为所有这些远程分支创建本地跟踪分支,而无需手动创建每个分支?可以这样说:

代码语言:javascript
复制
$ git checkout --track -b --all origin

我已经用谷歌和RTMs搜索过了,但到目前为止还没找到。

EN

回答 9

Stack Overflow用户

发布于 2010-06-23 15:15:09

Otto给出的答案是好的,但是所有创建的分支都将以"origin/“作为名称的开头。如果您只想让最后一部分(在最后一个/之后)作为结果分支名称,请使用以下命令:

代码语言:javascript
复制
for remote in `git branch -r | grep -v /HEAD`; do git checkout --track $remote ; done

它还有一个好处,就是不会给你任何关于模糊引用的警告。

票数 194
EN

Stack Overflow用户

发布于 2008-12-18 20:48:39

你可以很容易地编写脚本,但我不知道它什么时候会有价值。这些分支很快就会落后,你必须一直更新它们。

远程分支将自动保持最新状态,因此最简单的方法就是在您真正想要处理的位置创建本地分支。

票数 15
EN

Stack Overflow用户

发布于 2014-05-08 05:14:18

代码语言:javascript
复制
for i in `git branch -a | grep remote`; do git branch --track ${i#remotes/origin/} $i; done
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/379081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档