git的基本配置

git是一个版本控制工具,既然是工具,那么就可以根据人的个人喜好来进行设置,git也提供了配置,可以根据自己的喜好来对它进行个性化的设计,以让自己舒服的玩。
git有三个配置文件

  1. /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
  2. ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
  3. 当前仓库的 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即可。


其他一些配置

  1. 开启着色
    git config --global color.ui true
  2. 设置显示中文文件名
    git config --global core.quotepath false

一些其他配置可以参见:https://blog.csdn.net/yuxin6866/article/details/74835735/

最后强烈推荐一个学习git的教程网站:https://www.liaoxuefeng.com/wiki/896043488029600/900785521032192

最新文章

  1. ASP.NET下回车键的触发效果
  2. js传递json格式对象到服务器
  3. 快速入门系列--WCF--06并发限流、可靠会话和队列服务
  4. paper 109 :图像处理中的拉普拉斯算子
  5. Entity Framework + WCF REST JSON Service
  6. 用开源软件构建App的高效服务端
  7. jQuery firefox chrome IE 绑定mousewheel事件
  8. Layer 一个让你想到即可做到的web弹窗/层 解决方案
  9. 51单片机C语言学习笔记4:keil C51绝对地址访问
  10. wamp出现问题#1045 - Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: NO)的解决方法
  11. Gson解析JsonObject和JsonArray
  12. Linux - 输入输出流程序 代码(C)
  13. JS时间日期格式转换
  14. mybatis generator Date类型时间丢失
  15. 你不可不知的iOS与Android差异点!
  16. 安卓开发笔记(二十一):Android Studio如何创建assets目录
  17. Burpsuite 1.7.33启动的一点小问题。
  18. adb remount 失败:remount failed: Operation not permitted
  19. 如何在osx的终端下使用字典
  20. vue再次入手(数据传递①)

热门文章

  1. UVa 1596 Bug Hunt (string::find &amp;&amp; map &amp;&amp; 模拟)
  2. CDOJ 1061 C - 秋实大哥与战争 STL set 迭代器
  3. 大数据笔记(二十九)——RDD简介、特性及常用算子
  4. POJ 1625 Censored ( Trie图 &amp;&amp; DP &amp;&amp; 高精度 )
  5. angular 语法的应用
  6. MySQL表碎片清理
  7. sqlalchemy.exc.InvalidRequestError: Table &#39;run_result&#39; is already defined for this MetaData instance
  8. 使用ffmpeg来转换media Video
  9. 关于maven项目 启动页面报错 The type java.io.ObjectInputStream cannot be resolved.
  10. Jmeter之插件安装