git的基本配置
git是一个版本控制工具,既然是工具,那么就可以根据人的个人喜好来进行设置,git也提供了配置,可以根据自己的喜好来对它进行个性化的设计,以让自己舒服的玩。
git有三个配置文件
- /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
- ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
- 当前仓库的 Git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前仓库有效。
需要注意的是:每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。
用户信息的配置
第一个要配置的是你个人的用户名称和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一起被永久纳入历史记录。
git config -global user.name"用户名"
git config -global user.email"邮箱地址"
如果使用了global选项则表明你所有的仓库都会引用这个用户名和邮箱,如果想要在不同的仓库引用不同的用户名和邮箱可以去掉global选项。
文本编辑器的设置
git 会默认给你使用一个文本编辑器vi或者vim,如果喜欢其他的文本编辑器可以这样设置:
git config --global core.editor emacs
差异分析工具,在解决合并冲突的时候可以利用。
git config --global merge.tool vimdiff
git可以使用 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等差异分析工具。
查看已经配置了的配置信息
git config --list | l
有时候可能会看到相同的变量名,但是它们都是来自不同的配置文件,最终都是使用最后一个。
也可以直接选择查看某一个变量的配置信,例如:git config user.name
配置忽略文件
有些时候有些文件是不需要放入版本库的,这个时候我们可以选择把它忽略,不让它添加进版本。
只需要编写一个.gitingore文件就可以做到,编写好了并把它提交到版本库,忽略文件也是可以进行版本管理的。
例如:你想忽略.class结尾的文件,那么只需要在.gitingore文件中写上*.class即可。
我已经建好了.gitingore文件,并且提交了,现在我想忽略class结尾的文件,如果我提交时,就会出现上图所示。
如果你想查看某一类型忽略文件的信息可以这样: git check-ignore -v hh.class,会看到第二行的消息。
如果你确实想要提交的话可以这样:git add -f hh.class 使用-f参数强制提交。
别名的设置alias
为了输入方便和自己的使用习惯可以设置别名。
例如:git status,git branch,git checkout等命令时,可以为他们设置一个别名。
例如设置别名:git config --global alias.co checkout 表示设置了全局别名。后面直接输入git co即可表示git checkout。
设置别名不仅可以设置单个,也可以设置组合别名。
例如:git push origin master 可以这样设置别名:git config --global alias.psm 'push origin master',后面只需要输入git psm即可。
查看日志git log 设置别名:
git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"即可。这个日志显示格式一目了然。直接输入git lg即可。
其他一些配置
- 开启着色
git config --global color.ui true - 设置显示中文文件名
git config --global core.quotepath false
一些其他配置可以参见:https://blog.csdn.net/yuxin6866/article/details/74835735/
最后强烈推荐一个学习git的教程网站:https://www.liaoxuefeng.com/wiki/896043488029600/900785521032192