主頁 > 知識(shí)庫 > Git 撤銷操作、刪除文件和恢復(fù)文件

Git 撤銷操作、刪除文件和恢復(fù)文件

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

大致介紹

經(jīng)過前面的學(xué)習(xí),已經(jīng)建立了版本庫,并上傳了文件,這次來學(xué)習(xí)對(duì)這些文件進(jìn)行基本的操作,即:

    ◆ 撤銷操作

    ◆ 刪除文件

    ◆ 恢復(fù)文件

我在此之前,已經(jīng)將三個(gè)文件提交到了版本庫

撤銷操作

撤銷操作的語法:

git checkout -- 文件名

撤銷操作一般有兩種情況:

  ◆ 文件修改后還沒有提交到暫存區(qū),進(jìn)行撤銷操作之后,文件恢復(fù)到和版本庫中一模一樣

  ◆文件修改后提交到了暫存區(qū),進(jìn)行撤銷之后,文件恢復(fù)到在提交到暫存區(qū)之前的狀態(tài)

現(xiàn)在index.htm中的內(nèi)容是:

index.html

我們修改他的內(nèi)容為:

!DOCTYPE html>
 html lang="en">
 head>
 meta charset="UTF-8">
 title>Document/title>
 /head>
 body> 
 /body>
 /html>

1、文件未提交到暫存區(qū)

用 git status 命令查看文件狀態(tài)

可以看到 index.html 修改了,但是還沒有提交到暫存庫,我們對(duì)這個(gè)文件進(jìn)行撤銷操作

然后再打開 index.html 文件,就可以發(fā)現(xiàn),它就恢復(fù)到了和版本庫中一模一樣的狀態(tài)

2、文件提交到了暫存區(qū),但未提交到版本庫

用 git status 命令查看:

如果這個(gè)文件寫錯(cuò)了,想要修改,但是它已經(jīng)提交到了暫存區(qū)。所以先需要將它撤銷到工作區(qū)

git reset HEAD 文件名

寫入命令并查看文件狀態(tài)

可以看到,文件已經(jīng)撤銷到了工作區(qū),但是現(xiàn)在文件的內(nèi)容還沒有變化,如果想要恢復(fù)到修改之前的狀態(tài)就使用

git checkout -- 文件名

此時(shí),文件就和版本庫中的文件一模一樣了

刪除文件

新寫一個(gè)文件,并提交到暫存區(qū)

1、先刪除工作區(qū)中的文件,在刪除暫存區(qū)的文件

  要先刪除工作區(qū)中的文件,有兩種方式:

   ◆ 只在文件夾中刪除

   ◆用命令行

rm 文件名

刪除工作區(qū)的文件后,查看文件狀態(tài):

可以看到,工作區(qū)中的 game.js 刪除了,但是暫存區(qū)中的 game.js 還未刪除

刪除暫存區(qū)中的文件:

git rm 文件名

如圖:

這樣就將兩個(gè)去的文件都刪除了

2、同時(shí)刪除工作區(qū)和暫存區(qū)中的文件

git rm -f 文件名

如圖:

3、刪除暫存區(qū)的文件,不刪除工作區(qū)的文件

git rm --cached 文件名

如圖:

恢復(fù)文件

如果我們想要恢復(fù)某個(gè)文件或者整個(gè)項(xiàng)目到之前的某個(gè)版本,Git提供了方便的操作

可以使用 git log 查看版本庫的信息

如圖:

如果想要將某個(gè)文件恢復(fù)到某個(gè)版本時(shí)的狀態(tài),可以使用以下的命令:

git checkout id 文件名

其中的id是圖中框出來的,例如要將 index.html 文件恢復(fù)到 add three files 版本時(shí)的狀態(tài):

id可以不用全部復(fù)制過來,復(fù)制一部分就可以了

如果要將所有的文件都恢復(fù)到某個(gè)版本,可以使用下面的命令

git reset --hard id

如圖:

除了用id恢復(fù)到某個(gè)版本庫時(shí)的狀態(tài),還有別的寫法:

 //恢復(fù)到上一個(gè)版本
 git reset --hard HEAD^ 
 // 恢復(fù)到前兩個(gè)版本
 git reset --hard HEAD~2

另外,可以用 git reflog 查看恢復(fù)的記錄

參考資料: 

CODE幫助文檔-Progit中文版

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!

您可能感興趣的文章:
  • 簡(jiǎn)單談?wù)凣it中的回滾操作
  • git 刪除分支和回滾的實(shí)例詳解
  • Git里多種撤銷操作的最佳方法
  • 基于Git的常用撤銷技巧與解決沖突方法(推薦)
  • Git使用小技巧之回滾與撤銷詳解

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

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Git 撤銷操作、刪除文件和恢復(fù)文件》,本文關(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