
通過(guò)看廖老師的教程(看了兩遍了),配上他的圖(哈哈,挺形象的),再查了一下.git里面的結(jié)構(gòu),就比較清晰了。下面是我對(duì)git命令行學(xué)習(xí)的總結(jié),里面有些話(huà)是加了我自己的理解的,可能有偏差,但是剛開(kāi)始學(xué)習(xí),先明白個(gè)大概,使用多了自然就明理了。
1、初始化倉(cāng)庫(kù):git init ?(提示創(chuàng)建成功,文件下多了.git的文件,若沒(méi)有,ls -a 命令行可見(jiàn))。
2、添加文件:git add xxx ?(執(zhí)行完之后,沒(méi)有提示,說(shuō)明add成功了,添加到了暫存區(qū))。
3、提交文件:git commit -m ?"這是你對(duì)提交的內(nèi)容的說(shuō)明" ?(提示提交了什么,一般是先git add,然后再git commit。如果修改了直接commit,它會(huì)提示你沒(méi)有)。
4、查看工作區(qū)狀態(tài):git status ?(如果修改了文件但未執(zhí)行git add這個(gè)命令,會(huì)提示修改的文件未被提交到暫存區(qū)stage。 如果是git add之后執(zhí)行,會(huì)提示修改已經(jīng)被提交了。如果是git commit 之后執(zhí)行,你也沒(méi)有在工作區(qū)修改過(guò)任何文件,會(huì)提示你工作目錄是干凈的working tree clean)。
5、查看具體修改內(nèi)容:git diff ?(會(huì)提示我們做了什么修改 , 這個(gè)可以和第4個(gè)命令git status 一起使用,先用git status查看狀態(tài),發(fā)現(xiàn)有改變,就用git diff查看修改具體內(nèi)容是什么)。
6、查看提交的版本記錄:git log 或者git log --pretty=oneline(這兩個(gè)效果是一樣的,只是展示的方式不同)。
7、查看提交和回退記錄:git reflog ?(當(dāng)你想回到指定版本,之前的或之后的都可以,git reflog能查看到你reset和commit的記錄,并附帶對(duì)應(yīng)的版本號(hào),如下圖)。

8、回退上一個(gè)版本:git reset --hard HEAD^ 或者git reset --hard HEAD~1 或者 git reset --hard xxx? (HEAD^表示上一個(gè)版本,HEAD^^表示上上個(gè)版本,以此類(lèi)推。HEAD~數(shù)字,回退對(duì)應(yīng)幾個(gè)版本。xxx:表示版本號(hào),回退到指定版本號(hào))。
9、撤銷(xiāo)修改:git checkout -- xxxx ?(xxxx:表示文件名,執(zhí)行該命令會(huì)讓工作區(qū)回歸到最近一次commit或add的狀態(tài))。
10、暫存區(qū)回退上一個(gè)版本:git reset HEAD xxxx(xxxx表示文件名,暫存區(qū)會(huì)回退到上一個(gè)版本或說(shuō)回退到版本庫(kù)中最新版本)。
11、刪除版本庫(kù)文件:git rm xxxx (一般是先rm xxx,然后git rm,這兩步的意思是把修改放到了暫存區(qū),最后再git commit 一下,把修改提交到版本庫(kù),此時(shí)版本庫(kù)就會(huì)把xxxx刪除了。? 如果直接git rm,它就相當(dāng)于完成了rm xxx和git rm兩步)。