关于
Buy Me a Coffee
归档
友链
猫咪
RSS
后台
切换模式
返回顶部
首页
说说
日常
开发
游戏
资源
虚拟货币
首页
说说
日常
开发
游戏
资源
虚拟货币
关于
Buy Me a Coffee
归档
友链
猫咪
RSS
后台
git快速合并当前分支到其他分支
开发
·
2021-04-08
·
更新于 2021-04-09
LiesAuer
### 场景 当前在A分支,要求将当前分支的提交合并到B分支。 ### 常规合并 ```shell # 暂存当前未提交的改动 git stash -m "xxx" # 切换到B分支 git checkout B # 合并A分支到当前分支(即B分支) git merge A # 推送提交 git push origin B:B # 切换回A分支 git checkout A # 取出暂存的改动继续工作 git stash pop ``` 这种常规合并的操作方式不仅繁琐,而且要求当前分支不能有未提交的更新(意味着如果有未提交的改动,你必须先进行`stash`,否则无法切换分支),还有一个问题就是我们的项目是做了文件改动后自动增量编译的,意味着这一系列操作将会触发两次重编译(两次`checkout`),浪费大量的时间。 ### 快速合并 ```shell # 直接将当前分支合并到B分支 git push . HEAD:B # 推送提交 git push origin B:B ``` 这种常规合并的方式不需要任何的暂存、切换分支操作,也不会触发重编译,可节省大量时间。但是这种方式也有缺点,首先只支持`fast-forward`模式的合并,如果非`fast-forward`模式则需要先将B分支合并到当前分支,这样子就会对当前分支有侵入,其次用这种`push`的方式合并在`reflog`是不会有记录的,所以以后如果要回退,就不容易找到对应位置的`commit id`。如果你确定要合并的提交不会造成冲突且不会造成大的影响,可以使用这种方式合并。
git
如果您觉得文章或项目对您有帮助,戳我请博主喝一杯咖啡叭!
取消回复
提交评论
瞅一瞅叭
域名出售
uterminal.ai
服务器推荐
RackNerd 2C2G $20.98/年(美国 隐藏款)
狗云 1C0.75G ¥150/年(香港 BGP)
最新评论
tinker: 为什么运行一段时间就会停止,重启又恢复!没有报错信息,频道信息和...
pansoo: 大佬,这个只能下载文件吗?能不能保存频道消息
Miller: 最好再多加一个查漏补缺的功能(捂脸(/ω\)),因为抓取了3天才...
Miller: 大佬,好像不会爬取jpeg文件,图片和视频数量对不上,是不是图片...
cola: 大佬,可以爬取电报频道的评论内容嘛
Miller: 大佬我终于会了,用cmd命令cd /d G:\cco,感谢大佬指点!
Miller: https://img13.chkaja.com/files/2...
关于站长
广东 佛山
liesauer#liesauer.net
LiesAuer
CC BY-NC-SA 4.0
粤ICP备16094588号-1
萌ICP备20245567号
Theme
Jasmine
by
Kent Liao