如何配置Git使不同服务器执行git pull时自动拉取对应分支?
配置服务器Git自动拉取对应分支的方案
你可以通过设置本地分支与远程分支的跟踪关系,让两台服务器执行git pull时自动拉取指定分支的代码,具体操作如下:
测试服务器(对应main分支)
情况1:已克隆仓库
- 切换到main分支:
git checkout main - 设置本地main分支跟踪远程origin/main分支:
执行完后,后续直接运行git branch --set-upstream-to=origin/main maingit pull就会自动拉取远程main分支的更新。
情况2:未克隆仓库
直接克隆指定分支,默认建立跟踪关系:
git clone -b main git@github.com:你的用户名/你的仓库名.git
克隆完成后,仓库默认处于main分支,执行git pull会自动拉取远程main分支。
生产服务器(对应production分支)
情况1:已克隆仓库
- 切换到production分支:
git checkout production - 设置本地production分支跟踪远程origin/production分支:
后续执行git branch --set-upstream-to=origin/production productiongit pull将自动拉取远程production分支的代码。
情况2:未克隆仓库
直接克隆指定分支:
git clone -b production git@github.com:你的用户名/你的仓库名.git
手动修改配置文件的方式(可选)
如果需要直接编辑Git配置,可打开仓库目录下的.git/config文件,修改对应分支的配置:
测试服务器的
.git/config添加或修改:[branch "main"] remote = origin merge = refs/heads/main生产服务器的
.git/config添加或修改:[branch "production"] remote = origin merge = refs/heads/production
这样配置后,两台服务器执行git pull时无需指定分支,会自动拉取对应远程分支的更新,从根源避免误拉取其他分支代码到生产环境。
内容的提问来源于stack exchange,提问作者Watheq Alshowaiter
相关产品推荐
相关产品推荐

