Git 本地分支推送多个远程分支
方法一:一次性推送命令
命令格式:
git push <远程仓库名> <本地分支引用>:<远程分支名1> <本地分支引用>:<远程分支名2> ...
具体步骤:
- 确保你的代码修改已经提交到了本地分支
git add .
git commit -m "你的提交信息"
# 或者如果你之前已经提交过,只是修改了新的代码,确保所有修改都已提交
- 执行推送命令
假设你当前在 feature/login 分支,修改已提交,现在需要推送到远程的 feature/login 和 qa/test 分支。
最清晰的写法(推荐):
git push origin HEAD:feature/login HEAD:qa/test
- HEAD 是一个指针,它总是指向你当前所在的、最新的那次提交(也就是你刚修改代码后的提交)
- HEAD:feature/login:将 HEAD 指向的提交推送到远程 origin 的 feature/login 分支
- HEAD:qa/test:将 同一个 HEAD 提交 推送到远程 origin 的 qa/test 分支
如果本地分支名与第一个远程分支名相同,可以简写:
# 如果本地分支就叫 feature/login,这等价于 git push origin feature/login:feature/login
git push origin feature/login HEAD:qa/test
输出结果示例:
枚举对象中: 5, 完成.
对象计数中: 100% (5/5), 完成.
使用 4 个线程进行压缩
压缩对象中: 100% (3/3), 完成.
写入对象中: 100% (3/3), 352 字节 | 352.00 KiB/s, 完成.
总共 3(差异 2),复用 0(差异 0),包复用 0
remote:
To github.com:your-username/your-repo.gita1b2c3d..e4f5g6h HEAD -> feature/logina1b2c3d..e4f5g6h HEAD -> qa/test