佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > git丟棄本地修改的所有文件(新增、刪除、修改)

git丟棄本地修改的所有文件(新增、刪除、修改)

熱門標(biāo)簽:呼叫中心市場(chǎng)需求 檢查注冊(cè)表項(xiàng) 服務(wù)器配置 智能手機(jī) 鐵路電話系統(tǒng) 網(wǎng)站文章發(fā)布 銀行業(yè)務(wù) 美圖手機(jī)

一,未使用 git add 緩存代碼時(shí)。

可以使用 git checkout -- filepathname (比如: git checkout -- readme.md  ,不要忘記中間的 “--” ,不寫就成了檢出分支了??!)。放棄所有的文件修改可以使用 git checkout .  命令。

此命令用來放棄掉所有還沒有加入到緩存區(qū)(就是 git add 命令)的修改:內(nèi)容修改與整個(gè)文件刪除。但是此命令不會(huì)刪除掉剛新建的文件。因?yàn)閯傂陆ǖ奈募€沒已有加入到 git 的管理系統(tǒng)中。所以對(duì)于git是未知的。自己手動(dòng)刪除就好了。 

二,已經(jīng)使用了  git add 緩存了代碼。

可以使用  git reset HEAD filepathname (比如: git reset HEAD readme.md)來放棄指定文件的緩存,放棄所以的緩存可以使用 git reset HEAD . 命令。

此命令用來清除 git  對(duì)于文件修改的緩存。相當(dāng)于撤銷 git add 命令所在的工作。在使用本命令后,本地的修改并不會(huì)消失,而是回到了如(一)所示的狀態(tài)。繼續(xù)用(一)中的操作,就可以放棄本地的修改。

 三,已經(jīng)用 git commit  提交了代碼。

可以使用 git reset --hard HEAD^ 來回退到上一次commit的狀態(tài)。此命令可以用來回退到任意版本:git reset --hard  commitid

你可以使用 git log 命令來查看git的提交歷史。git log 的輸出如下,之一這里可以看到第一行就是 commitid:

commit cf0d692e982d8e372a07aaa6901c395eec73e356 (HEAD -> master)
Author: toyflivver 2440659688@qq.com>
Date: Thu Sep 28 14:07:14 2017 +0800

多余的空行

commit 14aa4d7ad4ac6fba59b4b8261d32e478e8cc99ff
Author: toyflivver 2440659688@qq.com>
Date: Thu Sep 28 14:06:44 2017 +0800

正常的代碼

commit da3a95c84b6a92934ee30b6728e258bcda75f276
Author: toyflivver 2440659688@qq.com>
Date: Thu Sep 28 13:58:12 2017 +0800

qbf

commit 267466352079296520320991a75321485224d6c6
Author: toyflivver 2440659688@qq.com>
Date: Thu Sep 28 13:40:09 2017 +0800

qbf

可以看出現(xiàn)在的狀態(tài)在 commitid 為 cf0d692e982d8e372a07aaa6901c395eec73e356 的提交上(有 HEAD -> master 標(biāo)記)。

本地修改了許多文件,其中有些是新增的,因?yàn)殚_發(fā)需要這些都不要了,想要丟棄掉,可以使用如下命令:

git checkout . #本地所有修改的。沒有的提交的,都返回到原來的狀態(tài)
git stash #把所有沒有提交的修改暫存到stash里面??捎胓it stash pop回復(fù)。

git reset --hard HASH #返回到某個(gè)節(jié)點(diǎn),不保留修改,已有的改動(dòng)會(huì)丟失。
git reset --soft HASH #返回到某個(gè)節(jié)點(diǎn), 保留修改,已有的改動(dòng)會(huì)保留,在未提交中,git status或git diff可看。

git clean -df #返回到某個(gè)節(jié)點(diǎn),(未跟蹤文件的刪除)
git clean 參數(shù)
 -n 不實(shí)際刪除,只是進(jìn)行演練,展示將要進(jìn)行的操作,有哪些文件將要被刪除。(可先使用該命令參數(shù),然后再?zèng)Q定是否執(zhí)行)
 -f 刪除文件
 -i 顯示將要?jiǎng)h除的文件
 -d 遞歸刪除目錄及文件(未跟蹤的)
 -q 僅顯示錯(cuò)誤,成功刪除的文件不顯示

注:

git reset 刪除的是已跟蹤的文件,將已commit的回退。
git clean 刪除的是未跟蹤的文件

也可以使用:

git clean -nxdf(查看要?jiǎng)h除的文件及目錄,確認(rèn)無誤后再使用下面的命令進(jìn)行刪除)
git checkout .  git clean -xdf

到此這篇關(guān)于git丟棄本地修改的所有文件(新增、刪除、修改)的文章就介紹到這了,更多相關(guān)git丟棄本地修改內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Git commit --amend 修改提交信息操作
  • Git提交日志修改方法實(shí)例匯總
  • git log根據(jù)特定條件查詢?nèi)罩静⒔y(tǒng)計(jì)修改的代碼行數(shù)
  • git rebase -i 修改歷史提交的方法
  • idea直接修改新的git地址的方法(圖文)
  • git修改已commit的注釋信息實(shí)現(xiàn)
  • Git如何修改遠(yuǎn)程倉(cāng)庫(kù)地址
  • git修改和刪除功能_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

標(biāo)簽:上海 新疆 紅河 河南 長(zhǎng)治 沈陽 樂山 滄州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《git丟棄本地修改的所有文件(新增、刪除、修改)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    壶关县| 肃南| 长春市| 高州市| 成都市| 渑池县| 鹿邑县| 娱乐| 宣威市| 红安县| 溧水县| 马尔康县| 杭锦后旗| 江川县| 沙河市| 桂阳县| 岐山县| 嘉善县| 莆田市| 南溪县| 陕西省| 白朗县| 石棉县| 大埔县| 临湘市| 灌阳县| 内江市| 鄢陵县| 新泰市| 抚顺市| 城步| 吉隆县| 金山区| 罗城| 阳春市| 龙泉市| 浑源县| 永定县| 江津市| 加查县| 本溪|