git是一種非常優秀的免費開源分布式版本控制系統。
本文將對常用的命令進行集中記錄,以方便查閱
。需要注意的是,這裡我只簡要記錄指令功能,對於新人學習來說還是推薦廖雪峰老師的教程,非常淺顯易懂。
1.基本操作
2.遠端倉庫
3.分支管理
基本操作速查:
1.安裝完成後設定:
$ git config --global user.name "your name"
$ git config --global user.email
--global 這個引數表示這台機器上所有的
git倉庫都會使用這個配置
2.建立版本庫:
$ mkdir learngit
$ cd learngit
$ pwd
建立空目錄,pwd命令用於顯示當前目錄。
$ git init
把目錄變成倉庫。
$ ls -ah
檢視隱藏的.git目錄。
3.新增檔案到版本庫:
$ git add readme.txt
$ git commit -m "wrote a readme file"
建立檔案(例如:readme.txt)後,把檔案新增到倉庫,命令
git add
可反覆多次使用,新增多個檔案。
-m後面輸入的是本次提交的說明
.commit
可以一次提交很多檔案。
每次修改,如果不add
到暫存區,那就不會加入到commit
中。
4.狀態及修改檢視:
$ git status
檢視工作區狀態。
$ git diff
檢視修改內容。
$ git diff head -- readme.txt
上一版commit提交之後再修改出新一版還未提交時,檢視當前工作區和版本庫裡面最新版本的區別。
5.版本回退:
$ git log
檢視提交歷史,以便確定要回退到哪個版本。如果嫌輸出資訊太多,可以加上--pretty=oneline引數。
顯示內容裡
commit
後的數字是
commit id
(版本號)。從新版本退回舊版本時新版本號不會再顯示,若要重回新版本,
請參考下文
的git reflog
命令。
$ git reflog
檢視命令歷史,以便確定要回到未來的哪個版本。
$ git reset --hard commit_id
在各版本之間穿梭。用head表示當前版本,上乙個版本就是
head^
,上上乙個版本就是
head^^
。要退回上一版本
commit_id
可以用head^。
$ cat readme.txt
在git控制台顯示文字內容,適合小文字快速檢視。
$ git checkout -- file
命令中的--很重要,沒有
--,就變成了「切換到另乙個分支」的命令。
命令git checkout -- readme.txt意思就是,把
readme.txt
檔案在工作區的修改全部撤銷,這裡有兩種情況:
一種是readme.txt自修改後還沒有被放到暫存區,現在撤銷修改就回到和版本庫一模一樣的狀態,即最近一次
commit
的版本;
一種是readme.txt已經
add新增到暫存區後,又作了修改,現在撤銷修改就回到新增到暫存區後的狀態,即放棄檔案新增到暫存區之後在工作區又做的修改,不是放棄暫存區檔案。
若是已經add新增到暫存區後,想放棄暫存區的內容,請參考下文的
git reset head file。
總之,就是讓這個檔案回到最近一次git commit或
git add
時的狀態。
$ git reset head file
把暫存區的修改撤銷掉(unstage),重新放回工作區。執行命令後暫存區空,工作區有修改,若再想將工作區的修改撤銷,請參考上文
git checkout -- file。
git reset命令既可以回退版本,也可以把暫存區的修改回退到工作區。用
head
表示最新的版本。
$ git rm readme.txt
刪除readme.txt檔案,需要再
commit
提交後才會修改版本庫。若發現錯刪,但還未提交版本庫,請使用
git checkout
回撤。
若檔案修改後已經commit提交到了版本庫,再想撤銷修改請參考上文
Git常用指令集合 (基本操作)
git是一種非常優秀的免費開源分布式版本控制系統。本文將對常用的命令進行集中記錄,以方便查閱。需要注意的是,這裡我只簡要記錄指令功能,對於新人學習來說還是推薦廖雪峰老師的教程,非常淺顯易懂。1.安裝完成後設定 git config global user.name your name git con...
Git常用指令集合 (遠端倉庫)
git是一種非常優秀的免費開源分布式版本控制系統。本文將對常用的命令進行集中記錄,以方便查閱。需要注意的是,這裡我只簡要記錄指令功能,對於新人學習來說還是推薦廖雪峰老師的教程,非常淺顯易懂。在本機上建立ssh key並在github上新增ssh key。1.本地建庫後上傳至遠端庫 登陸github,...
Git常用指令集合 (分支管理)
git是一種非常優秀的免費開源分布式版本控制系統。本文將對常用的命令進行集中記錄,以方便查閱。需要注意的是,這裡我只簡要記錄指令功能,對於新人學習來說還是推薦廖雪峰老師的教程,非常淺顯易懂。本篇文章是關於git分支管理的各種相關操作指令。1.檢視分支 git branch2.建立分支 git bra...