1、創建
復制一個已創建的倉庫
git clone 路徑
創建一個新的本地倉庫
git init
2、本地修改
顯示工作路徑下全部已修改的文件
git status
顯示與上次提交版本文件的不同
git diff
把當前所有修改添加到下次提交中
git add .
指定某個文件的修改添加到下次提交中
git add -p <file>
提交本地的所有修改
git commit -a
提交之前已標記的變化
git commit
修改上次提交,請勿修改已發布的提交記錄
git commit --amend
3、提交歷史
從最新提交開始顯示所有的提交記錄
git log
顯示指定文件的所有修改
git log -p <file>
誰,在什么時間,修改了文件的什么內容
git blame <file>
4、分支與標簽
顯示所有分支
git branch -av
切換當前分支
git checkout <branch>
創建新分支,基于當前分支
git branch <new -branch>
創建新的可追溯的分支,基于遠程分支
git checkout --track <remote/branck>
刪除本地分支
git branch -d <branch>
給當前的提交打標簽
git tag <tag-name>
5、更新與發布
列出當前配置的遠程端
git remote -v
顯示遠程端信息
git remote show <remote>
添加新的遠程端
git remote add <shortname> <url>
下載遠程端的所有改動到本地,不會自動合并到當前
git fetch <remote>
下載遠程端的所有改動到本地,自動合并到當前
git pull <remote> <branch>
將本地版本發布到遠程端
git push <remote> <branch>
?刪除遠程端分支
git branch -dr <remote/branch>
發布標簽
git push --tags
6、合并與重置
將分支合并到當前
git merge <branch>
將當前版本重置到分支中,請勿重置予發布的提交
git rebase <branch>
退出重置
git rebase --abort
解決沖突后繼續重置
git rebase --continue
使用配置號的合并工具去解決沖突
git mergetool
在編輯器中手動解決沖突后,標記文件為已解決沖突
git add <resolved -file>
git rm <resolved -file>
7、撤銷
放棄工作目錄下的所有修改
git reset --hard HEAD
放棄某個文件的所有本地修改
git checkout HEAD <file>
重置一個提交,通過創建一個截然不同的新提交
git revert <commit>
將head重置到上一次提交的版本,并拋棄該版本之后的所有修改
git reset --hard ?<commit>
將head重置到上一次提交的版本,并將之后修改標記為未添加到緩存區的修改
git reset <commit>
將head重置到上一次提交的版本,并保留未提交的本地修改
git reset --keep <commit>