發(fā)現(xiàn)網(wǎng)上關(guān)于git的資料太多了,大家都在分別以不同的角度,圖形來(lái)一步步講解git的使用。我們也來(lái)自己敲幾遍。
一、環(huán)境安裝
本文是在Windows環(huán)境下,所以安裝的Window客戶端。關(guān)于下載可以通過(guò)《git windows客戶端》這里分享的下載。
安裝也就不多說(shuō)了,安裝后,右鍵就會(huì)顯示 Git Bash Here 菜單。

二、初始化配置
安裝完Git,我們需要先配置自己的身份信息,作為自己參與團(tuán)隊(duì)協(xié)作的一個(gè)身份標(biāo)記,比如誰(shuí)對(duì)某個(gè)文件進(jìn)行了修改。這樣就會(huì)在每一個(gè)Git
的提交中,使用這些信息,并且它會(huì)寫入到你的每一次提交中,不可更改,鍵入下述命令:
git config --global user.name "Administrator"
git config --global user.email "admin@nideyuan.com"
注意 --global 選項(xiàng),表示你這臺(tái)機(jī)器上所有的Git倉(cāng)庫(kù)都會(huì)使用這個(gè)配置,當(dāng)然也可以對(duì)某個(gè)倉(cāng)庫(kù)指定不同的用戶名和Email地址,執(zhí)行如下命令:
git config --local user.name "nideyuan"
git config --local user.email "1147659453@qq.com"
三、初始化倉(cāng)庫(kù)
如果你使用已經(jīng)使用git管理的項(xiàng)目,你就可以略過(guò)這一步,直接從已經(jīng)存在的git服務(wù)器上clone下來(lái)即可。
如果你還有建立項(xiàng)目或這個(gè)已經(jīng)有本地項(xiàng)目,但未使用git管理時(shí),才需要執(zhí)行本步驟的操作。即在項(xiàng)目的根目錄下執(zhí)行:
$ git init
Initialized empty Git repository in E:/git4nideyuan/.git/
執(zhí)行完,可以發(fā)現(xiàn)當(dāng)前目錄下多了一個(gè).git的目錄,這個(gè)目錄是Git來(lái)跟蹤管理版本庫(kù)的,一般情況下,不需要改動(dòng)目錄中的文件,除非你非常有把握或指導(dǎo)某些配置是什么,建議不要修改。
四、添加文件到Git暫存區(qū)
既然我們已經(jīng)初始化了項(xiàng)目的根目錄,那我們就可以向項(xiàng)目中增加文件,Just do it!
4.1增加一個(gè)README.txt文件
$ vi README.txt
讀讀我,這可是項(xiàng)目中添加的第一個(gè)文件哦。
保存后。ls發(fā)現(xiàn)確實(shí)有這個(gè)文件了。
$ls README.txt
README.txt
我看看下獲取當(dāng)前工作區(qū)與緩存區(qū)的狀態(tài),使用git status ----實(shí)際使用中可以查看也可以不查看
$ git status
On branch master
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
README.txt
nothing added to commit but untracked files present (use "git add" to track)
看到?jīng)],前文提到多git的文件假如文件未加入版本控制,那么該文件處于Untracked(未跟蹤)的狀態(tài),我們可以通過(guò)git add指令將文件添加到暫存區(qū)中此時(shí)文件會(huì)變成Tracked(已跟蹤)狀態(tài)!我們可以使用下面的指令,將文件一個(gè)個(gè)添加到暫存區(qū)中:
$git add README.txt
再看下項(xiàng)目的狀態(tài):----實(shí)際使用中可以查看也可以不查看
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: README.txt
文件狀態(tài)為 committed.
4.2批量增加文件到Git倉(cāng)庫(kù)
1)將所有tracked文件中被修改或已刪除的文件信息添加到Git暫存區(qū),不會(huì)處理untracked的文件!
git add -u
2)將所有tracked文件中被修改或已刪除的文件信息添加到Git倉(cāng)庫(kù),會(huì)把理untracked的文件信息也加入Git暫存區(qū)
git add -A
3)把當(dāng)前工作區(qū)的所有文件全加入到Git暫存區(qū)
git add .
4.3交互模式將文件添加到Git倉(cāng)庫(kù)
除了上面三種外,git其實(shí)還為我們提供了交互界面模式,我們先增加兩個(gè)文件:
$ touch git_add_i_001.txt
$ touch git_add_i_002.txt
我們?cè)冁I入:
git add -i

上面的過(guò)程是這樣的:
1.鍵入git add -i,進(jìn)入后,鍵入4,選擇添加untracked的文件
2.他給我們列出了untracked的文件,然后我們根據(jù)序號(hào)來(lái)添加文件,分別依次添加了我們剛才創(chuàng)建的兩個(gè)文件
3.輸入?會(huì)彈出相關(guān)提示,然后直接回車,彈出選擇菜單!
4.我們?cè)俅屋斎?,選擇了查看倉(cāng)庫(kù)狀態(tài)。發(fā)現(xiàn)文件都已經(jīng)在git暫存區(qū)了。
5.然后再次輸入7,就退出了交互模式!
五、將暫存區(qū)文件提交到到Git倉(cāng)庫(kù)
使用命令git commit -m "這里是提交說(shuō)明",提交到倉(cāng)庫(kù)中去
簡(jiǎn)單解釋一下git commit
命令,-m
后面輸入的是本次提交的說(shuō)明,一般項(xiàng)目中會(huì)對(duì)這里的說(shuō)明格式有所約束,當(dāng)然如果自己的項(xiàng)目,可以隨便錄入,這樣你就能從歷史記錄里方便地找到改動(dòng)記錄。
$ git commit -m "這是第一次提交了3個(gè)文件"
[master (root-commit) 1f66eca] 這是第一次提交了3個(gè)文件
3 files changed, 1 insertion(+)
create mode 100644 README.txt
create mode 100644 git_add_i_001.txt
create mode 100644 git_add_i_002.txt
我們?cè)倏错?xiàng)目當(dāng)前工作區(qū)與緩存區(qū)的狀態(tài)狀態(tài)
$ git status
On branch master
nothing to commit, working tree clean
Git告訴我們當(dāng)前沒(méi)有需要提交的修改,而且,工作目錄是干凈(working directory clean)的。
六、將項(xiàng)目傳到遠(yuǎn)程倉(cāng)庫(kù)中
對(duì)于新的項(xiàng)目來(lái)說(shuō)我們需要這一步,同樣如果你的是用其他平臺(tái)中clone的項(xiàng)目,則可以省去該步驟。
首選需要先設(shè)置遠(yuǎn)程倉(cāng)庫(kù)的地址,因?yàn)槲业氖亲约捍罱ǖ膅itlab服務(wù)器,所以是可以是自己設(shè)置的地址,如果你沒(méi)有自己搭建的服務(wù)器,也可以在coding或github中申請(qǐng)。
git remote add origin http://demo.nideyuan.com/root/test.git
這里注意要添加自己的sshkey,gitlab中添加方法可以見(jiàn)《gitlab之:使用手冊(cè)-登錄并添加SSHKeys》,其他平臺(tái)的可以自行百度哦。
git push -u origin master
由于遠(yuǎn)程庫(kù)是空的,我們第一次推送master分支時(shí),加上了-u參數(shù),Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來(lái),在以后的推送或者拉取時(shí)就可以簡(jiǎn)化命令
git push origin master
好了,到目前為止,我們已經(jīng)完成了git客戶端的安裝,git項(xiàng)目的初始化,已經(jīng)將文件添加的暫存區(qū),并提交文件到版本庫(kù)中,而且還將項(xiàng)目傳到了自己的遠(yuǎn)程倉(cāng)庫(kù)中。
原文地址: http://www.nideyuan.com/?p=351