Git的幾個常用命令

suemi發表於2014-12-04

git config

sh#git config 用來配置一些基本資訊,最常用的如下
git config --global user.name "suemi"
git config --global user.email suemi94@qq.com
git config --global core.editor vim

git remote

shellgit remote add origin ssh:....#增加遠端倉庫origin,遠端倉庫名為origin時可以不帶
git remote #檢視有哪些遠端倉庫

git branch

shellgit branch #檢視本地分支
git branch -r origin #檢視遠端倉庫分支
git branch -d work#刪除work分支
git branch jj#新建本地jj分支
git checkout work#切換到本地work分支
git checkout 

git clone

這個沒什麼好說的,用的太多了

git pull

shellgit pull origin work:master#拉取遠端倉庫origin的work分支到本地的master分支上,一般用於別人提交了後使用
git fetch origin work # 拉取遠端倉庫origin的work分支
git diff origin/work..master #檢視兩分支的差異
git merge origin/work#在當前分支上合併origin/work

git push

shellgit push origin master:work#推送本地master分支到遠端倉庫origin的work分支上
gut push origin :work#刪除遠端的work分支
git push -f 強制push,哪怕遠端分支的commit記錄比你新

git commit

shellgit commit -a -m "first commit"
#操作檔案
git commit --amend#將之後的操作補上去,最終只提交了一次

git status

shellgit status#檢視當前狀態

git diff

shellgit dff#顯示還沒有儲存的改動
git diff --cached#顯示已經儲存和最近提交之間的差異

git 撤銷的操作,最好在push之前做

shellgit revert 會用一個新的 commit 來回復所有的變更(適合已經push出去給別人的情境)。
git revert HEAD#撤銷前一次提交
git revert HEAD^#撤銷前前次提交
git revert 5962845b0059f9e7702b73066e6a35aea1efaa49#撤銷特定某次提交

git reset HEAD^ 就會回到前一版本,適合發現前一次 commit 有問題或是想要修改 commit log,可以修改後再重新 commit。你在檔案所做的修改下次依然會提交
git reset –hard HEAD^ 則會完全抹掉前一次的 commit。

git rebase 會直接重新構建你的commit history,不推薦使用

最後,小提醒:工作之前先看看別人有沒有提交,push之前看看有沒有更新,優先推薦git fetch,還有在push之後就不要使用commit –amend了

注意:你想push的分支絕對不能有你本地所沒有的commit,也不能有與本地分支記錄不一致的commit
詳細解釋可以參考Git 初學指南