2020年2月18日 星期二

[Git] Git Command

●查看本地端(Local)的分支
git branch




●查看遠端(Remote)的分支
git branch -r





●trunk info
git remote show origin (詳細)

git remote -v


●建立分支
git branch XXX (XXX:分支名)

●切換分支
git checkout XXX (XXX:分支名)
git checkout 1234567 (7碼的commit SHA)

●查看本端的檔案內修改了哪些地方
git diff













●查看哪些檔案被修改或新增了哪些檔案
git status










若有先 git add,其被修改或新增的檔案會變綠色





若有先add和commit後







git add XXX (XXX:要add的檔案名稱,若在其他資料夾要加路徑)
git add . (add所有檔案)

取消add
git reset XXX (XXX:要reset的檔案名稱)


●回到從遠端(Remote)拉下來的當前版本的程式
(放其所有修改,回到最後一次從git下來的程式(不一定是最新的程式))
git reset --hard

●回到從遠端(Remote)拉下來的最新版本的程式
git reset HEAD --hard

●回到從遠端(Remote)拉下來的指定版本的程式
git reset HEAD --hard XXX (XXX:commit SHA)

●下完commit,要回到commit前
git reset --soft HEAD^1



●Commit
git commit -m "XXX" (XXX:此次commit的註解)

Push到新的branch
git push origin HEAD:XXX (XXX:branch的名稱)

●分支合併master
git checkout maste
git merge XXX (XXX:branch的名稱)

master合併到分支
git checkout XXX (XXX:branch的名稱)
git pull origin master

只commit部分內容(hunk)
git add -p


輸入e,手動選在不要add的


假設不要printf("d");
按i(INSERT) → 把那行刪掉 → ESC → :wq (儲存離開) → git commit → git push




-------
origin/master 遠端origin的maste位置
origin/HEAD 當前提交的位置
master 本端的master的位置

<<<<<<<HEAD
hello 1  //本端
=======
hello 2  遠端
>>>>>>>76C8606...

-------










免費GUI推薦:
1. sublime merge
2. git-scm (用git bash)



沒有留言:

張貼留言