git init:初始化一個Git倉庫。git
git add <file>:添加文件到暫存區。url
git commit -m 「描述」:提交已經被add進來的改動,提交到本地庫。spa
git push origin <branch-name>:推送分支,就是把該分支上的全部本地提交推送到遠程庫。日誌
git pull:抓取遠程的新提交。server
git log:顯示從最近到最遠的提交日誌。blog
git reset --hard commit_id:切換版本。rem
在Git中,用HEAD表示當前版本,也就是最新的提交1094adb...(注意個人提交ID和你的確定不同),上一個版本就是HEAD^,上上一個版本就是HEAD^^,固然往上100個版本寫100個^比較容易數不過來,因此寫成HEAD~100。it
git log:查看提交歷史,以便肯定要回退到哪一個版本。ast
git reflog:查看命令歷史,以便肯定要回到將來的哪一個版本。stream
git status:查看狀態。
git checkout -- file:把文件在工做區的修改所有撤銷。
場景1:當你改亂了工做區某個文件的內容,想直接丟棄工做區的修改時,用命令git checkout -- file。
場景2:當你不但改亂了工做區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD <file>,就回到了場景1,第二步按場景1操做。
git rm file:刪除一個文件。若是要從版本庫中刪除該文件,再使用git commit。
git remote add origin git@server-name:path/repo-name.git:關聯遠程庫。
git push -u origin master:第一次推送master分支的全部內容。
git push origin master:推送最新修改。
git clone[url]:克隆。
git branch:查看分支。
git branch <name>:建立分支。
git checkout <name>:切換分支。
git checkout -b <name>:建立+切換分支。
git merge <name>:合併某分支到當前分支。
git merge --no-ff -m 「描述」 <name>:合併分支時,加上--no-ff參數就能夠用普通模式合併,合併後的歷史有分支,能看出來曾經作過合併。
git branch -d <name>:刪除分支。
git branch -D <name>:強行刪除分支。
git log --graph:查看分支合併圖。
git remote:查看遠程庫的信息。
git remote -v:顯示遠程倉庫更詳細的信息。
git checkout -b branch-name origin/branch-name:在本地建立和遠程分支對應的分支。
git branch --set-upstream branch-name origin/branch-name:創建本地分支和遠程分支的關聯。
rebase:把本地未push的分叉提交歷史整理成直線。
git tag <tagname>:建立一個標籤。
git tag -a <tagname> -m 「描述」:建立帶有說明的標籤。
git tag:能夠查看全部標籤。