首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >让现有的git分支跟踪远程分支

让现有的git分支跟踪远程分支
EN

Stack Overflow用户
提问于 2009-07-26 12:58:11
回答 7查看 80.2K关注 0票数 84

使用git时,我通常的工作流程是这样的:

  1. 创建本地存储库
  2. 在存储库中执行一些工作、添加/更改文件等。
  3. 决定为存储库创建一个中央远程位置,并创建一个
  4. 将所有提交从本地存储库推送到这个新远程存储库

G29

但是,现在我希望能够从这个远程存储库执行pushpull操作,而不必指定要推送到的位置或从中提取的位置;我希望本地主机能够跟踪远程主机。

对我来说,正确的方法并不清楚,我也无法从文档中确定它,即使它实际上不应该是多个命令。

因为这是每个存储库只做一次的事情,所以我通常采用两种简单但老套的解决方案之一:

  1. 使用git clone创建了一个新的本地存储库,并删除了旧存储库。在git克隆之后,新的存储库被设置为跟踪origin.
  2. manually编辑的.git/config,以使主跟踪来源。

我想我应该能够运行一个命令,可能是某种形式的git remote来设置一个现有的存储库,让master跟踪远程master。谁能告诉我这个命令是什么?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-03-03 02:59:06

使用设置上游参数:

代码语言:javascript
复制
git branch --set-upstream local-branch-name origin/remote-branch-name

运行上面的命令可以正确地更新.git/config文件,甚至可以使用以下输出进行验证:

"Branch local- branch -name设置为跟踪远程分支远程分支名称。“

上游编辑:正如martijn所说:“在Gitv1.8.0版本中,---upstream已被弃用。取而代之的是---upstream-to。”

代码语言:javascript
复制
git branch --set-upstream-to local-branch-name origin/remote-branch-name

有关详细信息,请参阅this

票数 157
EN

Stack Overflow用户

发布于 2009-07-26 13:06:46

git help remote应该会向你展示你需要知道的东西。我想你想要的是

代码语言:javascript
复制
git remote add [remote-name] [remote-url]

# Set a local branch to follow the remote
git config branch.[branch-name].remote [remote-name]

# Set it to automatically merge with a specific remote branch when you pull
git config branch.[branch-name].merge [remote-master]

您也可以手动编辑.git/config来设置这些设置。

票数 19
EN

Stack Overflow用户

发布于 2009-07-31 19:56:56

如果您想要创建一个新的本地分支来跟踪远程分支,也可以使用此选项:

代码语言:javascript
复制
git checkout --track -b [branch_name] --track origin[or other remote name]/[remote_branch_name] 

或者更好:

代码语言:javascript
复制
git checkout -t origin/branch_name
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1184518

复制
相关文章

相似问题

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