天天看點

git常用指令清單

檢視是否關聯到github:ssh -T [email protected]

一,基礎指令

git init

:把這個目錄變成Git可以管理的倉庫

git add

:把檔案添加至暫存區

git commit

:把檔案送出到倉庫,簡單解釋一下

git commit

指令,

-m

後面輸入的是本次送出的說明,可以輸入任意内容,當然最好是有意義的,這樣你就能從曆史記錄裡友善地找到改動記錄。

{

第一步是用

git add

把檔案添加進去,實際上就是把檔案修改添加到暫存區;

第二步是用

git commit

送出更改,實際上就是把暫存區的所有内容送出到目前分支。

}

git status

指令可以讓我們時刻掌握倉庫目前的狀态

git diff

顧名思義就是檢視difference,檢視修改的内容

二,基礎倉庫管理

git log

指令顯示從最近到最遠的送出日志,需要友情提示的是,你看到的一大串類似

1094adb...

的是

commit id

(版本号)

git reset

指令:

$ git reset --hard HEAD^
HEAD is now at e475afc add distributed
           

上一個版本就是

HEAD^

,上上一個版本就是

HEAD^^

,當然往上100個版本寫100個

^

比較容易數不過來,是以寫成

HEAD~100

指令

git checkout -- readme.txt

意思就是,把

readme.txt

檔案在工作區的修改全部撤銷,這裡有兩種情況:

一種是

readme.txt

自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀态;

一種是

readme.txt

已經添加到暫存區後,又作了修改,現在,撤銷修改就回到添加到暫存區後的狀态。

指令

git reset HEAD <file>

可以把暫存區的修改撤銷掉(unstage),重新放回工作區

删除檔案:用指令

git rm

删掉,并

git commit

使用指令

git push origin master

推送最新修改

指令

git clone

克隆一個本地庫

例:

$ git clone [email protected]:michaelliao/gitskills.git
Cloning into 'gitskills'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
Receiving objects: 100% (3/3), done.
           

三,分支管理

檢視分支:

git branch

建立分支:

git branch <name>

切換分支:

git checkout <name>

建立+切換分支:

git checkout -b <name>

合并某分支到目前分支:

git merge <name>

删除分支:

git branch -d <name>

可檢視分支情況的指令:

git status

檢視分支圖:

git log --graph

當Git無法自動合并分支時,就必須首先解決沖突。解決沖突後,再送出,合并完成。

解決沖突就是把Git合并失敗的檔案手動編輯為我們希望的内容,再送出。