檢視是否關聯到github:ssh -T [email protected]
一,基礎指令
git init
:把這個目錄變成Git可以管理的倉庫
git init
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合并失敗的檔案手動編輯為我們希望的内容,再送出。