git config命令使用

1. git config簡介css

 

咱們知道config是配置的意思,那麼git config命令就是對git進行一些配置。而配置通常都是寫在配置文件裏面,那麼git的配置文件在哪裏呢?互動一下,先問下你們。
大家所知的git配置文件是放在哪裏的?git有幾個配置文件呢?是的,聰明的你,稍微查查資料就知道咯,git裏面一共有3個配置文件,首先是:倉庫級配置文
件:該文件位於當前倉庫下,路徑.git/,文件名爲.gitconfig,這個配置中的設置只對當前所在倉庫有效倉庫級配置文件內容以下:
第二個是全局級配置文件:win7下面路徑,在用戶目錄下,以我的的PC機爲例,其路徑爲:C:\Users\zuoyu.ht,文件名爲.gitconfig
全局級配置文件內容以下:
 
最後是系統級配置文件:本地git的安裝目錄下,以左御的git安裝路徑爲例:D:\Program Files\Git\etc,文件名爲:gitconfig,內容以下:
從三個圖的對比中,咱們能夠發現,有些配置項的名稱是同樣的,好比「core」,在git中,每一項的配置名稱又叫作「section」,
「section」下面的每一行對應着一個key和一個value。須要注意的是:系統級配置文件不一樣於另外兩個配置文件,是由於他少了
一個點,所以用vim打開的時候,是沒有高亮顯示的。」core」這個section在每一個配置文件中都有,那麼它git最終會調用哪一個配置
文件呢?這就要有一個前後順序了。
2. 配置文件如何生效的
用一個咱們你們都熟悉的例子來比較,就是css。通常來講,在一個頁面中引入css文件的方法有三種,見: http://www.cnblogs.com/hutaoer/archive/2010/12/07/1899105.html
通俗的講就是行內樣式「<div style=「width:200px」>」,內嵌樣式「<style type=「text/css」>div{width:200px}</style>」
和外部樣式「<link rel=「stylesheet」 href=「div.css」>」。這三種樣式的權重是行內>內嵌>外部。相似的,對於git來講,配置文件
的權重是倉庫>全局>系統。Git會使用這一系列的配置文件來存儲你定義的偏好,它首先會查找/etc/gitconfig文件(系統級),該
文件含有對系統上全部用戶及他們所擁有的倉庫都生效的配置值。接下來Git會查找每一個用戶的~/.gitconfig文件(全局級)。最後
Git會查找由用戶定義的各個庫中Git目錄下的配置文件.git/config(倉庫級),該文件中的值只對當前所屬倉庫有效。以上闡述的三
層配置從通常到特殊層層推動,若是定義的值有衝突,之後面層中定義的爲準,例如:.git/config和/etc/gitconfig的較量中,
.git/config取得了勝利。雖然你也能夠直接手動編輯這些配置文件,可是運行git config命令將會來得簡單些。下面咱們就來看看如
何利用git config命令來編輯配置各個級別的文件。
   3. 用git config命令查看配置文件
命令參數 –list, 簡寫 -l
格式:git config [–local|–global|–system] -l
查看倉庫級的config,即.git/.config,命令:git config –local -l
查看全局級的config,即C:\Users\zuoyu.ht\.gitconfig,命令:git config –global -l
查看系統級的config,即D:\Program Files\Git\etc\gitconfig,命令:git config –system -l
查看當前生效的配置,命令:git config -l,這個時候會顯示最終三個配置文件計算後的配置信息,以下圖:
   4. 使用git config命令編輯配置文件
編輯的英文單詞是什麼,沒錯,edit
命令參數 –edit, 簡寫 -e
格式:git config [–local|–global|–system] -e
查看倉庫級的config,即.git/.config,命令:git config –local -e,與–list參數不一樣的是,git config -e默認是編輯倉庫級的配置文件。
查看全局級的config,即C:\Users\zuoyu.ht\.gitconfig,命令:git config –global -e
查看系統級的config,即D:\Program Files\Git\etc\gitconfig,命令:git config –system -e
   執行這個命令的時候,git會用配置文件中設定的編輯器打開配置文件。
      5. 增長一個配置項
參數 –add
格式: git config [–local|–global|–system] –add section.key value(默認是添加在local配置中)
注意add後面的section,key,value一項都不能少,不然添加失敗。好比咱們執行:git config –add cat.name tom
而後查看local中的配置:
注意增長一項配置而不賦值 git config –add cat.age,或者單單增長一個section,git config –add cat1,不會成功。
6.獲取一個配置項
有時候,咱們並不須要查看全部配置的值,而是查看某個配置項的值,怎麼作呢?
命令參數 –get
格式:git config [–local|–global|–system] –get section.key(默認是獲取local配置中內容)
咱們先往global配置中寫入一個cat.name=Tomcat的配置項,再使用git config –get cat.name看看獲得的是什麼
結果就是local中的cat.name=Tom,所以git config –get section.key 等價於git config –local –get section.key
若是獲取一個section不存在的key值,不會返回任何值
若是獲取一個不存在的section的key值,則會報錯
  7.刪除一個配置項
命令參數 –unset
格式:git config [–local|–global|–system] –unset section.key
相信有了前兩個命令的使用基礎,你們觸類旁通就知道改怎麼用了,來,咱們試試刪除local配置中的cat.name
 
 
-------------------------------------------------------------------------------------------------------

git config配置文件

設置 git status的顏色。html

git config --global color.status autonode

 

一.Git已經在你的系統中了,你會作一些事情來客戶化你的Git環境。你只須要作這些設置一次;即便你升級了,他們也會綁定到你的環境中。你也能夠在任什麼時候刻經過運行命令來從新更改這些設置。git

 

      Git有一個工具被稱爲git config,它容許你得到和設置配置變量;這些變量能夠控制Git的外觀和操做的各個方面。這些變量能夠被存儲在三個不一樣的位置:  github

  1./etc/gitconfig 文件:包含了適用於系統全部用戶和全部庫的值。若是你傳遞參數選項’--system’ 給 git config,它將明確的讀和寫這個文件。  vim

  2.~/.gitconfig 文件 :具體到你的用戶。你能夠經過傳遞--global 選項使Git 讀或寫這個特定的文件。編輯器

   3.位於git目錄的config文件 (也就是 .git/config) :不管你當前在用的庫是什麼,特定指向該單一的庫。每一個級別重寫前一個級別的值。所以,在.git/config中的值覆蓋了在/etc/gitconfig中的同一個值。工具

    在Windows系統中,Git在$HOME目錄中查找.gitconfig文件(對大多數人來講,位於C:\Documents and Settings\$USER下)。它也會查找/etc/gitconfig,儘管它是相對於Msys 根目錄的。這多是你在Windows中運行安裝程序時決定安裝Git的任何地方。post

  

二.你的標識(Your Identity) 學習

2.1 當你安裝Git後首先要作的事情是設置你的用戶名稱和e-mail地址。這是很是重要的,由於每次Git提交都會使用該信息。它被永遠的嵌入到了你的提交中:

   $ git config --global user.name "John Doe"

   $ git config --global user.email johndoe@example.com 

   重申一遍,你只須要作一次這個設置。若是你傳遞了 --global 選項,由於Git將老是會使用該信息來處理你在系統中所作的一切操做。若是你但願在一個特定的項目中使用不一樣的名稱或e-mail地址,你能夠在該項目中運行該命令而不要--global選項。 

2.2 你的編輯器(Your Editor)

   如今,你的標識已經設置,你能夠配置你的缺省文本編輯器,Git在須要你輸入一些消息時會使用該文本編輯器。缺省狀況下,Git使用你的系統的缺省編輯器,這一般多是vi 或者 vim。若是你想使用一個不一樣的文本編輯器,例如Emacs,你能夠作以下操做: 

  $ git config --global core.editor emacs 

2.3 你的比較工具(Your Diff Tool)

   另一個你可能須要配置的有用的選項是缺省的比較工具它用來解決合併時的衝突。例如,你想使用vimdiff: 

  $ git config --global merge.tool vimdiff 

   Git能夠接受kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, 和 opendiff做爲有效的合併工具。你也能夠設置一個客戶化的工具;查看第7章得到更多關於此的信息。 

2.4 檢查你的設置(Checking Your Settings)

   若是你想檢查你的設置,你可使用 git config --list 命令來列出Git能夠在該處找到的全部的設置

  $ git config --list 

  user.name=Scott Chacon 

  user.email=schacon@gmail.com 

  color.status=auto 

  color.branch=auto 

  color.interactive=auto

  color.diff=auto

  ... 

  你可能會看到一個關鍵字出現屢次,這是由於Git從不一樣的文件中(例如:/etc/gitconfig以及~/.gitconfig)讀取相同的關鍵字。 在這種狀況下,對每一個惟一的關鍵字,Git使用最後的那個值。 

 

  你也能夠查看Git認爲的一個特定的關鍵字目前的值,使用以下命令 git config {key}: 

  $ git config user.name 

  Scott Chacon

 

2.5 獲取幫助(Getting help)

 

  若是當你在使用Git時須要幫助,有三種方法能夠得到任何git命令的手冊頁(manpage)幫助信息

  $ git help <verb> 

  $ git <verb> --help 

  $ man git-<verb> 

   例如,你能夠運行以下命令獲取對config命令的手冊頁幫助

  $ git help config 

   這些命令很是友好,由於你能夠在任何地方存取他們,即便非在線狀態。若是手冊頁和本書仍然不足而你須要我的的幫助,你能夠試着使用Freenode IRCServer上的#git或#github 頻道(irc.freenode.net)。這些頻道會按期由數百個對Git很是熟悉的專業人士所維護,他們會很是樂意幫助你。 

 

2.6 總結(Summary)

  你應該對Git是什麼以及Git與你可能使用的其它CVCS之間的不一樣有了一個基本的瞭解。你也應當在你的系統中有了一個具備你我的標識的能夠工做的Git版本。是時候來學習一些Git的基本知識了。

相關文章
相關標籤/搜索