這篇文章主要介紹了Git 如何放棄所有本地修改的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
本文主要主要介紹了Git 如何放棄所有本地修改的方法,分享給大家,具體如下:
git checkout . #本地所有的修改,沒有提交的,都返回到原來的狀態(tài)
git stash #把所有沒有提交的修改暫存到stash里面??捎胓it stash pop恢復(fù)。
git reset --hard HASH #返回到某個(gè)節(jié)點(diǎn),不保留修改。
git reset --soft HASH #返回到某個(gè)節(jié)點(diǎn),保留修改。
git log #可以查看
git commit 的歷史記錄及其 HASH ID
git clean 的用法
git clean命令用來從你的工作目錄中刪除所有沒有track過的文件
git clean經(jīng)常和git reset --hard一起使用. 記住reset只影響被track過的文件, 所以需要clean來刪除沒有track過的文件. 結(jié)合使用這兩個(gè)命令能讓你的工作目錄完全回到一個(gè)指定的的狀態(tài)
git clean -n
是一次clean的演習(xí), 告訴你哪些文件會被刪除. 記住它不會真正地刪除文件, 只是一個(gè)提醒。
git clean -f
刪除當(dāng)前目錄下所有沒有track過的文件. 它不會刪除 .gitignore 文件里指定的文件夾和文件, 不管這些文件有沒有被track過
git clean -f <path>
刪除指定路徑下的沒有被track過的文件
git clean -df
刪除當(dāng)前目錄下沒有被track過的文件和文件夾
git clean -xf
刪除當(dāng)前目錄下所有沒有track過的文件. 不管它是否是 .gitignore 文件里面指定的文件夾和文件
git reset --hard 和 git clean -f 是一對好基友. 結(jié)合使用它們能讓你的工作目錄完全回退到最近一次commit的時(shí)候
git clean 對于剛編譯過的項(xiàng)目也非常有用. 如, 它能輕易刪除掉編譯后生成的 .o 和 .exe 等文件. 這個(gè)在打包要發(fā)布一個(gè)release的時(shí)候非常有用
下面的例子要?jiǎng)h除所有工作目錄下面的修改, 包括新添加的文件. 假設(shè)你已經(jīng)提交了一些快照了, 而且做了一些新的開發(fā)
git reset --hard
git clean -df
運(yùn)行后, 工作目錄和緩存區(qū)回到最近一次commit時(shí)候一摸一樣的狀態(tài),git status會告訴你這是一個(gè)干凈的工作目錄, 又是一個(gè)新的開始了!
到此這篇關(guān)于Git 如何放棄所有本地修改的方法的文章就介紹到這了,更多相關(guān)Git 放棄所有本地修改內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
文章轉(zhuǎn)自腳本之家,原文鏈接:https://www.jb51.net/article/200206.htm
申請創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!