如何将测试分支及其远程分支重置为master并实现拉取同步?
解决方案:每日重置测试分支并同步所有开发者本地状态
维护者每日操作流程
- 拉取
master分支最新代码:git checkout master && git pull - 切换到测试分支(假设分支名为
test-branch):git checkout test-branch - 将测试分支硬重置到
master的最新提交:git reset --hard master - 安全强制推送到远程(
--force-with-lease比--force更稳妥,可避免意外覆盖他人推送):git push --force-with-lease origin test-branch
开发者最小操作同步方案
普通git pull会自动合并本地旧提交,需用以下方式直接同步远程测试分支的重置状态:
方式一:设置全局Git别名(一次性配置,后续一键同步)
在本地终端执行一次该命令配置别名:
git config --global alias.pull-test '!git fetch origin test-branch && git checkout test-branch && git reset --hard origin/test-branch'
之后每日同步只需运行:
git pull-test
方式二:直接执行同步命令(无需配置别名)
每次需要同步时执行:
git fetch origin test-branch && git checkout test-branch && git reset --hard origin/test-branch
说明
以上操作会直接将本地test-branch分支强制覆盖为远程最新状态,丢弃本地该分支的所有未提交或旧提交,确保所有人本地状态与远程重置后的分支完全一致。
内容的提问来源于stack exchange,提问作者David Boshton
相关产品推荐
相关产品推荐

