這次算是花了很長時間來整理這方面知識了,如果各位覺得有用,就請幫忙點個贊~
安裝好git之後,打開Git Bash
1、路徑操作
$ cd:c //切換盤符
$ cd … //回到上一層
$ pwd //查看當前路徑
$ cd ~ //回到當前目錄的主目錄(比如,你一開始打開是/c/Users/A,然後你通過一系列操作到了/c/Users/A/Documents/GitHub,輸入該命令就會回到/c/Users/A)
$ dir //列出當前目錄下的所有文件
2、文件操作
$ mkdir folderName //創建文件夾後面是名字
$ touch fileName //新建文件
$ vi fileName //編輯文件
3、Git文件路徑操作
$ git init //把當前目錄改爲Git可控制的倉庫
$ git add readme.txt //將文件添加到Git倉庫(沒有真正的存,只是在暫存區)
$ git commit -m “這裏寫提交修改的內容” //將修改提交到倉庫(暫存區所有內容提交到當前分支)
$ git add text1.txt text2.txt //同時增加兩個文件到git倉庫
更多文件以此類推
4、版本回溯
$ git status //查看當前狀態
$ git reset --hard HEAD^ //回到上一個版本(HEAD當前版本,HEAD^上一個版本,HEAD~100往上100個版本)
$ git reset --hard 123456 //回到固定版本號123456******
$ git reflog //查看每一次命令記錄歷史,確保能回到任意版本
5、版本比較
關於工作區,暫存區和分支的區別可以看菜鳥教程和兩位博主的內容
Git 工作區、暫存區和版本庫|菜鳥教程
Git的工作區、暫存區和分支——不浪漫的罪名LY
小丁帶你走進git的世界二-工作區暫存區分支——BattleHeart
我簡要概括一下,主要需要了解的就是平時我們進行操作的地方就是工作區,當我們用git add的時候就是把文件放入了暫存區,最後提交git commit就是提交到了分支上
$ git diff //比較工作區和暫存區的區別
$ git diff --cached //將暫存區中的某個文件和分支上的作比較
$ git diff HEAD - //將工作區中的某個文件與分支上的作比較
6、撤銷修改
$ git checkout – readme.md //撤銷修改:1. 文件在添加到緩存區前修改,則回退到原工作區狀態;2. 文件在添加到緩存區後修改,則回退到原緩存區狀態。也即是將readme.txt撤回到最近一次git add或git commit狀態(注:–表示在當前分支,如果沒有,則切換到另一個分支)
7、刪除文件
$ rm test.text //刪除文件(手動刪除文件)
$ git rm test.text //確認刪除
$ git commit -m “delete test.text” //確認刪除後提交版本庫,並附修改信息
$ git checkout – test.text //誤刪需要回退(用版本庫的版本替換到工作區)
8、添加到遠程庫
$ git remote add origin git@server-name:path/repo-name.git // 關聯一個遠程倉庫,如:$ git remote add origin [email protected]:CattyL/TestGit.git 在GitHub做好新建Repository
$ git push -u origin master // 第一次推送master分支的所有內容
注:在GitHub上創建新倉庫時,如果勾選了README.md選項時,可能會出現下面錯誤,提示:遠程倉庫有readme.txt,而本地倉庫沒有README.txt,此時應該先進行合併文件,再進行推送。
$ git pull --rebase origin master // 推送之前,進行合併
再次執行:git push -u origin master, 即可推送本地倉庫到遠程倉庫了
$ git push origin master // 以後每次本地修改更新後,推送最新修改
9、從遠程庫克隆
$ git clone [email protected]:ChrisLeejing/gitskills.git // 以SSH方式克隆
$ git clone https://github.com/ChrisLeejing/gitskills.git // 以Https協議方式克隆
10、分支管理
$ git branch // 查看所有分支(當前分支以‘*’標記)
$ git branch // 創建分支(如:git branch dev)
$ git checkout // 切換分支
$ git checkout -b // 創建切換分支(如:git checkout -b dev)
$ git merge // 合併分支到當前分支上
$ git branch -d // 刪除該分支
11、查看分支
$ git log --graph // 查看分支合併圖
$ git log --graph --pretty=oneline --abbrev-commit // 查看分支合併縮略圖
12、
結束語
如果大家發現裏面內容有錯請評論指出,或者這有一些沒有寫到的地方,而還比較常用到的功能,請也評論告訴我,我好繼續補充。還是一樣的話,如果覺得有用,請點個贊吧~
參考文章:
[1]不浪漫的罪名LY.Git的工作區、暫存區和分支[EB/OL].https://blog.csdn.net/ji519974770/article/details/79871400,2018-04-09.
[2]BattleHeart.小丁帶你走進git的世界二-工作區暫存區分支[EB/OL].https://www.cnblogs.com/dwlsxj/p/git.html,2016-01-13.
[3]Chris_Lee.初學Git——命令總結[EB/OL].https://www.cnblogs.com/chris0710/p/8925977.html,2018-04-30.