如果你们公司是用 rebase 来合并代码,你还在为每次执行 git pull 时,默认用 merge 来解决合并代码冲突而烦恼吗?记得往下看,一行代码解决你的烦恼!
1. 修改 pull 的默认配置为 rebase
git pull = git fetch + git merge
执行 git pull 命令时,默认是用 git merge 来合并代码的。大家都知道,用 merge 合并代码的节点不在一个分支上,不方便查看节点信息,所以很多公司是采用 git rebase 来合并代码的。针对这种情况,可以在自己的电脑终端,修改 git 的全局配置,将 pull 的默认配置改为 rebase。
2. 全局修改 pull 的命令:
git config --global --add pull.rebase true
3. 查看是否修改成功命令:
git config --global -l
4. 要取消 git config --global --add pull.rebase true 设置,你可以使用以下命令:
git config --global --unset pull.rebase
这将删除全局配置中关于 pull.rebase 的设置。如果你只是想取消当前项目中的设置,可以去掉 --global,只在项目目录下执行:
git config --unset pull.rebase
执行后,Git 会恢复为默认的拉取行为,通常是执行合并操作(merge)而不是重基操作(rebase)。
俗话说的好,知其然,还要知其所以然,为了更好地理解这行代码做了什么事情
1)git 的三个配置文件
git 一共有三个配置文件,且权重如下:
仓库级配置文件(--local) > 全局级配置文件(--global) >系统级配置文件(--system)
通过 git config 命令修改 git 配置
2)查看配置文件: 参数 --list, 简称 -l
查看仓库级的config:git config --local -l
查看全局级的config:git config --global -l
查看系统级的config:git config --system -l
查看当前生效的配置:git config -l 会显示最终三个配置文件后的配置信息
3)编辑配置文件: 参数 --edit,简称-e
编辑仓库级的config:git config --local -e
编辑全局级的config:git config --global -e
编辑系统级的config:git config --system -e
4)新增一个配置项: 参数 --add
格式:git config --local/--global/--system --add section.key value (默认是添加在local配置中)
git pull 命令默认是通过merge来合并代码的,全局修改 pull 为rebase
git config --add pull.rebase true
注意:section.key value 为必填
5)获取一个配置项: 参数 --get
格式:git config --local / --global / --system --get section.key
6)删除一个配置项: 参数 --unset
格式:git config --local/--global/--system --unset section.key