Git command

經常使用命令
查看、添加、提交、刪除、找回,重置修改文件git

git help # 顯示command的helpapp

git show # 顯示某次提交的內容 git show $id測試

git co -- # 拋棄工做區修改對象

git co . # 拋棄工做區修改ci

git add # 將工做文件修改提交到本地暫存區開發

git add . # 將全部修改過的工做文件提交暫存區同步

git rm # 從版本庫中刪除文件it

git rm --cached # 從版本庫中刪除文件,但不刪除文件ast

git reset # 從暫存區恢復到工做文件command

git reset -- . # 從暫存區恢復到工做文件

git reset --hard # 恢復最近一次提交過的狀態,即放棄上次提交後的全部本次修改

git ci git ci . git ci -a # 將git add, git rm和git ci等操做都合併在一塊兒作                                    

git ci -am "some comments"

git ci --amend # 修改最後一次提交記錄

git revert <$id> # 恢復某次提交的狀態,恢復動做自己也建立次提交對象

git revert HEAD # 恢復最後一次提交的狀態

查看文件diff

git diff # 比較當前文件和暫存區文件差別 git diff

git diff # 比較兩次提交之間的差別

git diff .. # 在兩個分支之間比較

git diff --staged # 比較暫存區和版本庫差別

git diff --cached # 比較暫存區和版本庫差別

git diff --stat # 僅僅比較統計信息

查看提交記錄

git log git log # 查看該文件每次提交記錄

git log -p # 查看每次詳細修改內容的diff

git log -p -2 # 查看最近兩次詳細修改內容的diff

git log --stat #查看提交統計信息

tig

Mac上可使用tig代替diff和log,brew install tig

Git 本地分支管理

查看、切換、建立和刪除分支

git br -r # 查看遠程分支

git br # 建立新的分支

git br -v # 查看各個分支最後提交信息

git br --merged # 查看已經被合併到當前分支的分支

git br --no-merged # 查看還沒有被合併到當前分支的分支

git co # 切換到某個分支

git co -b # 建立新的分支,而且切換過去

git co -b # 基於branch建立新的new_branch

git co $id # 把某次歷史提交記錄checkout出來,但無分支信息,切換到其餘分支會自動刪除

git co $id -b # 把某次歷史提交記錄checkout出來,建立成一個分支

git br -d # 刪除某個分支

git br -D # 強制刪除某個分支 (未被合併的分支被刪除的時候須要強制)

分支合併和rebase

git merge # 將branch分支合併到當前分支

git merge origin/master --no-ff # 不要Fast-Foward合併,這樣能夠生成merge提交

git rebase master # 將master rebase到branch,至關於: git co && git rebase master && git co master && git merge

Git補丁管理(方便在多臺機器上開發同步時用)

git diff > ../sync.patch # 生成補丁

git apply ../sync.patch # 打補丁

git apply --check ../sync.patch #測試補丁可否成功

git stash 工做現場

git stash

git stash save "這些是註釋啦"

新增工做現場(將當前的全部改動所有放入工做現場), git stash的默認註釋爲當前分支上一次commit的註釋
git stash list

顯示工做現場列表
git stash clear

清空工做現場列表(慎操做!)
git stash drop

git stash drop stash@{0}

刪除某一個工做現場,默認刪除最新工做現場:git stash drop = git stash drop stash@{0}
git stash pop

git stash pop stash@{0}

git stash pop --index stash@{0}

恢復工做現場的代碼(並刪除),默認恢復最新工做現場:git stash pop = git stash pop stash@{0}, --index 參數:不只恢復工做區,還恢復暫存區;
git stash apply

git stash apply --index stash@{0}

恢復工做現場的代碼(不刪除),默認恢復最新工做現場:git stash apply = git stash apply --index stash@{0}, --index 參數:不只恢復工做區,還恢復暫存區

相關文章
相關標籤/搜索