返回
1. git stash,救星
前端
2023-11-04 14:34:55
你所不知道的一些 git 相关的小技能
前言
为什么要写这篇文章呢?其实发现很多同学对一些很简单又有效的 git 手段都不太了解,下面结合使用场景介绍几个性价比极高的 git 指令。
使用场景:
工作过程中,修改了一部分代码,但发现环境不对,需要先切换分支处理一些紧急问题,这个时候不能直接切换分支,因为当前修改尚未提交。
操作:
git stash
该指令会将当前工作区所有未暂存的修改全部保存起来,切换分支后,再通过:
git stash pop
即可恢复之前的修改。
使用场景:
代码出现问题,但不知道是哪次提交引入的,需要逐个版本回退定位。
操作:
git bisect start HEAD <出现问题的版本>
git bisect run <检查代码是否出现问题的脚本>
然后根据脚本运行结果执行:
git bisect good
git bisect bad
不断缩小问题引入的版本范围,直至找到问题版本。
使用场景:
提交历史记录出现问题,需要对提交记录进行修改或合并。
操作:
git rebase -i HEAD~n
其中 n 为需要修改的提交记录个数,然后进入交互式界面,可以对提交记录进行修改、合并、删除等操作。
使用场景:
需要将某个特定提交从一个分支移植到另一个分支。
操作:
git cherry-pick <提交哈希值>
即可将指定提交移植到当前分支。
使用场景:
需要对比两个版本之间的差异,但希望以可视化方式展示。
操作:
git difftool <版本1> <版本2>
会使用系统默认的可视化对比工具打开两个版本之间的差异。
总结
以上介绍的几个 git 小技能,虽然不起眼,但在实际工作中却能极大地提高效率,希望大家能够熟练掌握,提升自己的 git 使用水平。