Git的三道菜,提升你的git水平
最近发现了scrapyd官方的一个bug,在fix的过程中被维护者吐嘈git水平太低了,然后多次commit了一些无用的信息,导致git的树相对混乱,这对于我这个只使用git commit push add的人提了一个醒,平常都只是将git当作一个存代码的地方,从来没有正儿八经的去看这个问题(这个问题也发生关于python编码的过程中,参考:python的编码与解码)
既然是日常工作中会用到,那就真的有必要好好准备一些基础的知识准备
第一道菜:git的常用配置
一. 配置文件的存储位置
二.配置你的用户名和密码
git config --global user.email bruce@163.com```
<p class="p1">
重申一遍,你只需要做一次这个设置。如果你传递了 -global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要-global选项。
</p>
## **三.配置你的编缉器**
<p class="p4">
你的标识已经设置,你可以配置你的缺省文本编辑器,Git在需要你输入一些消息时会使用该文本编辑器。缺省情况下,Git使用你的系统的缺省编辑器,这通常可能是vi 或者 vim。如果你想使用一个不同的文本编辑器,例如Emacs,你可以做如下操作:
</p>
``` git config --global core.editor emacs```
## **四.配置你的比较工具**
<p class="p4">
另外一个你可能需要配置的有用的选项是缺省的比较工具它用来解决合并时的冲突。例如,你想使用vimdiff:
</p>
``` git config --global merge.tool vimdiff```
<p class="p1">
Git可以接受kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, 和 opendiff作为有效的合并工具。你也可以设置一个客户化的工具;
</p>
## **五.检查你的配置**
<p class="p4">
如果你想检查你的设置,你可以使用 git config -list 命令来列出Git可以在该处找到的所有的设置:
</p>
```git config --list
user.name=bruce
user.email=bruce@163.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto```
<p>
</p>
<p class="p4">
你可能会看到一个关键字出现多次,这是因为Git从不同的文件中(例如:/etc/gitconfig以及~/.gitconfig)读取相同的关键字。 在这种情况下,对每个唯一的关键字,Git使用最后的那个值。
</p>
<p class="p4">
你也可以查看Git认为的一个特定的关键字目前的值,使用如下命令 git config {key}:
</p>
<p>
</p>
```$ git config user.name
bruce```
## **六.获取帮助**
<p class="p4">
如果当你在使用Git时需要帮助,有三种方法可以获得任何git命令的手册页(manpage)帮助信息:
</p>
<p>
</p>
```$ git help <verb>
$ git <verb> --help
$ man git-<verb>```
<p class="p4">
例如,你可以运行如下命令获取对config命令的手册页帮助:
</p>
```$ git help config```
<h1>
<strong>第二道菜:[Git官方文档](http://git-scm.com/book/zh/v2)</strong>
</h1>
<p>
官方文档可以说是最全的,在使用之前建议好好的阅读,经常查询,这样可以更好的了解什么情况下使用哪些命令
</p>
<p>
</p>
# 第三道菜:Git一些其它例子引用
[让你的Git水平更上一层楼的10个小贴士](http://blog.jobbole.com/75348/)
[如何在 Git 里撤销(几乎)任何操作](http://blog.jobbole.com/87700/)
- 原文作者:大鱼
- 原文链接:https://brucedone.com/archives/669/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. 进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。