git 的使用場景舉例

使用 git 很長一段時間了,覺得干巴巴的指令集合用處真心不大,結(jié)合場景使用才能理解的更深入(雖然也可能更片面)。下面是我整理的常見的場景:

撤銷

1. 沒有add,撤銷工作區(qū)的更改

git checkout fileName(從暫緩區(qū)恢復(fù)到工作區(qū))

2. 已經(jīng)add,撤銷緩存區(qū)的更改

git reset fileName

3. 已經(jīng)commit,覆蓋提交

 git commit —amend(修改文件為正確的之后,add之后)

4. 已經(jīng)commit,撤銷提交

git reset --hard fileName(—hard 使得工作區(qū)也會被撤銷到以前版本)

5. 已經(jīng)push且在遠程分支上,本地撤銷提交后強制提交

git push origin branch1 -f

線上提交代碼

1. Clone自己的項目

git clone git@github.com:leonzone/test.git
git push origin master

2. 關(guān)聯(lián)本地已有項目

git remote add origin 
git@github.com:leonzone/test.git
git push -u origin master(-u 以后默認(rèn)push到origin)

遠程分支

1. 新建遠程分支

git check -b develop
git push origin develop: develop

2. 同步代碼到遠程分支

git push origin develop

3. 同步遠程分支到本地

git checkout -b develop origin/develop

添加忽略

.gitignore只能忽略那些原來沒有被track的文件,如果某些文件已經(jīng)被納入了版本管理中,則修改.gitignore是無效的。那么解決方法就是先把本地緩存刪除(改變成未track狀態(tài)),然后再提交:

git rm -r –-cached filePath 
//添加 filePath 到 .gitignore
git commit -m “remove xx” 

查看變動

  1. 查看歷史中的多個 commit:log
    1. 查看詳細改動: git log -p
    2. 查看大致改動:git log --stat
  2. 查看具體某個 commit:show
    1. 要看最新 commit ,直接輸入 git show ;要看指定 commit ,輸入 git show commit的引用或SHA-1
    2. 如果還要指定文件,在 git show 的最后加上文件名
  3. 查看未提交的內(nèi)容:diff
    1. 查看暫存區(qū)和上一條 commit 的區(qū)別:git diff --staged(或 --cached)
    2. 查看工作目錄和暫存區(qū)的區(qū)別:git diff 不加選項參數(shù)
    3. 查看工作目錄和上一條 commit 的區(qū)別:git diff HEAD
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容