前言
咳吧寺,小白你好,我是老白散劫。比你早那么一段時(shí)間接觸git
稚机,不知道你之前是否跟我一樣是使用SVN
來進(jìn)行版本管理的,在這里获搏,我不會(huì)告訴你git
的歷史,發(fā)展以及優(yōu)勢赖条,既然你想學(xué)git
,我就當(dāng)你已經(jīng)懂了這些。我只能告訴你我為什么要學(xué)git
纬乍,因?yàn)槲矣X得它十分的高大上碱茁,外加可以裝逼~~
正文
環(huán)境安裝
正式開搞了,緊張不仿贬。本系列是在window系統(tǒng)上搞的纽竣,所以我只介紹window系統(tǒng)如何安裝
下載路徑:Git客戶端
安裝后再任意地方鼠標(biāo)右鍵就會(huì)出現(xiàn)如下,Git Bash Here
就是我們的客戶端
初次運(yùn)行 Git 前的配置
當(dāng)安裝完Git
應(yīng)該做的第一件事就是設(shè)置你的用戶名稱與郵件地址诅蝶。 這樣做很重要退个,因?yàn)槊恳粋€(gè)Git
的提交都會(huì)使用這些信息,并且它會(huì)寫入到你的每一次提交中调炬,不可更改:
git config --global user.name "tengj"
git config --global user.email johndoe@example.com
再次強(qiáng)調(diào)语盈,如果使用了 --global
選項(xiàng),那么該命令只需要運(yùn)行一次缰泡,因?yàn)橹鬅o論你在該系統(tǒng)上做任何事情刀荒, Git 都會(huì)使用那些信息。 當(dāng)你想針對特定項(xiàng)目使用不同的用戶名稱與郵件地址時(shí)棘钞,可以在那個(gè)項(xiàng)目目錄下運(yùn)行沒有 --global
選項(xiàng)的命令來配置缠借。
創(chuàng)建版本庫
指定一個(gè)目錄作為你的倉庫地址,我這里使用E:\gitRepository
作為我后期所有項(xiàng)目的總空間宜猜。
創(chuàng)建我的第一個(gè)項(xiàng)目名~起名叫做gitDemo
泼返,這個(gè)直接在window新建一個(gè)文件夾就行。
然后在gitDemo
目錄里面姨拥,右鍵鼠標(biāo)打開git
客戶端绅喉,輸入創(chuàng)建版本庫命令:
git init
瞬間Git就把倉庫建好了,而且告訴你是一個(gè)空的倉庫(empty Git repository)叫乌,細(xì)心的讀者可以發(fā)現(xiàn)當(dāng)前目錄下多了一個(gè)
.git
的目錄柴罐,這個(gè)目錄是Git
來跟蹤管理版本庫的,沒事千萬不要手動(dòng)修改這個(gè)目錄里面的文件憨奸,不然改亂了革屠,就把Git倉庫給破壞了。如果你沒有看到.git
目錄排宰,那是因?yàn)檫@個(gè)目錄默認(rèn)是隱藏的,自己麻利的改下目錄屬性吧似芝。
添加文件到版本庫
上面把git
倉庫搭建好了,現(xiàn)在就來試試添加文件到版本庫里面额各。
創(chuàng)建一個(gè)txt
文檔起名叫做readme.txt
国觉,往里面添加一點(diǎn)內(nèi)容hello git
.
注意,最好不要用系統(tǒng)自帶的txt
來編寫虾啦,因?yàn)檫@里需要文件是UTF-8
格式的麻诀,所以我使用EditPlus
這種可以把文件另存為UTF-8
格式的編輯器的痕寓。
創(chuàng)建好文件后,添加到倉庫只需要2個(gè)操作:
第一步蝇闭,用命令git add
告訴Git
呻率,把本地代碼托送到暫存區(qū)
git add readme.txt
第二步,用命令
git commit
告訴Git
呻引,把文件提交到倉庫:
git commit -m "first commit"
-m
參數(shù)是用來注釋你提交的信息的礼仗,這樣以后才知道這次提交時(shí)用來干嘛
查看當(dāng)前新增或者修改的文件
實(shí)際使用中你不止只有一個(gè)文件,或新增或修改多個(gè)文件逻悠,可能時(shí)間一久就忘了有多少文件需要提交
這里模擬一下元践,首先新建一個(gè)hello.txt
的文件,然后修改readme.txt
內(nèi)容童谒,添加一句come on baby
.
這樣就有2個(gè)文件需要提交了单旁。
我們使用git status
命令來查看當(dāng)前狀態(tài),是否有未提交的文件
git status
如圖,可以看到紅色的字體顯示的一個(gè)readme.txt
被修改過了饥伊,但還沒有準(zhǔn)備提交的修改象浑,另外一個(gè)是Untracked files: hello.txt
,表示新增的文件琅豆。
這時(shí)候準(zhǔn)備把上面2個(gè)文件都提交愉豺,使用命令:
git add readme.txt
git add hello.txt
或者你嫌棄文件太多,一次次add感覺很麻煩茫因,那么可以試試使用git add .
提交蚪拦,.
表示提交當(dāng)前目錄所有文件
git add .
提交后再使用git status
命令查看下
你會(huì)看到這2個(gè)文件都變成綠色了,表示添加到暫存區(qū)成功了
然后使用
git commit
提交后冻押,在使用git status
查看
git commit -m "second commit"
如圖外盯,可以看到文件提交到倉庫了,并且
git status
后提示nothing to commit, working directory clean
翼雀,說明當(dāng)前沒有需要提交的修改,工作目錄是干凈孩擂。
比較當(dāng)前文件跟版本文件內(nèi)容
假如你休假兩周從國外回來狼渊,第一天上班時(shí),已經(jīng)記不清上次怎么修改的readme.txt
类垦,所以狈邑,需要用git diff
這個(gè)命令看看:
git diff readme.txt
額我發(fā)現(xiàn)什么反應(yīng)都沒有。蚤认。原來是我readme.txt
已經(jīng)commit
提交到版本庫了米苹。內(nèi)容一樣當(dāng)然沒有啥好比對的。這里我們往readme.txt
添加一條內(nèi)容day day up
砰琢。
如圖蘸嘶,最后一行綠色的
+day day up.
表示是新增的良瞧。
查看歷史提交記錄
有時(shí)候你想看看之前提交的歷史紀(jì)錄~那么就需要使用到git log
命令:
git log
如圖,可以看到我們提交的2次歷史训唱,
first commit
和second commit
褥蚯。歷史紀(jì)錄是根據(jù)時(shí)間倒敘排列的。如果覺得代碼太多了况增,加點(diǎn)過濾就行
git log --pretty=oneline
其中赞庶,里面那一串常常字符串作用很重要,介紹版本回退的時(shí)候詳細(xì)說明澳骤。
總結(jié)
好了歧强,今天小白入門到此就結(jié)束了,如果你看完了這篇教程为肮,說明你已經(jīng)入門git
了摊册,恭喜。接下去就是繼續(xù)深入學(xué)習(xí)弥锄。今天所涉及的命令整理下如下:
git init 初始化倉庫
git add 添加文件到暫存區(qū)
git commit 提交文件到倉庫
git diff 比對本地和版本庫里面的文件
git log 查看歷史提交記錄
注意丧靡,文中多次提到的暫存區(qū),在git
中是個(gè)很重要的概念籽暇,弄懂了暫存區(qū)才算真正懂了git
温治。我暫時(shí)還不是很懂,畢竟我也剛學(xué)習(xí)戒悠,這篇教程說白了是我自己的學(xué)習(xí)筆記熬荆,一起努力吧,下篇就來介紹暫存區(qū)概念绸狐。
一直覺得自己寫的不是技術(shù)卤恳,而是情懷,一篇篇文章是自己這一路走來的痕跡寒矿⊥涣眨靠專業(yè)技能的成功是最具可復(fù)制性的,希望我的這條路能讓你少走彎路符相,希望我能幫你抹去知識的蒙塵拆融,希望我能幫你理清知識的脈絡(luò),希望未來技術(shù)之巔上有你也有我啊终。