git 簽出 恢復 指定檔案

2021-09-07 15:34:54 字數 1213 閱讀 6448

在專案開發中,偶爾會因為誤刪檔案或其他原因需要從git倉庫中恢復某些檔案。此篇文章將介紹如何通過git從歷史提交記錄、分支記錄恢復指定檔案。

說明:使用git checkout除了可以切換分支外,還可以簽出指定檔案。

語法

git checkout  [

] --

api

注意:簽出後的檔案將會覆蓋【工作目錄】中的相同檔案;若【工作目錄】中的檔案已刪除,會建立簽出的檔案。

背景:本地倉庫有個a.txt檔案,最近2次此檔案的修改記錄如下:

git checkout -- a.txt
提示:執行上面的命令後,將簽出上次提交時a.txt檔案。

附加上commit id,將會簽出指定提交記錄中的檔案:

git checkout 830cf95f56ef9a7d6838f6894796dac8385643b7 -- a.txt
背景:乙個倉庫一般有乙個master分支和其他多個brach。branch主要目的是為了某個功能開發,在開發期間 master 分支可能更新了核心模組,這時其他branch需要同步更新此模組。

說明:只需要簽出時指定分支名稱。

命令

git checkout master -- a.txt
除了簽出制定檔案外,git還支援簽出指定目錄、制定字尾等等。

說明:簽出根目錄下所有 txt 字尾的檔案。

命令

git checkout -- *.txt
說明:簽出 css 目錄。

命令

git checkout -- css/
web開發之路系列文章

git恢復刪除檔案

如果乙個檔案不小心被刪除了,可以有兩種方法恢復 1 需要記住所需恢復檔案的名字和版本號 commit id git checkout commit id file name 如果不加commit id,那麼git checkout file name 表示恢復檔案到本地版本庫中最新的狀態。2 不需要...

git 忽略指定檔案

git 忽略指定檔案 本文 有些檔案是我們並不想加入也無需被新增到 git 管理中,同時也不希望他出現在未跟蹤列表中。例如在編譯過程中生成的 o 檔案。gitignore 檔案可以達到這個效果。一 區域性和全域性設定 gitignore 有全域性和區域性兩種 1.全域性 通過修改全域性配置 git ...

git 合併指定檔案

只想將b分支的某個檔案test.txt合併到a分支上。git checkout a git checkout patch b test.txt 第乙個命令 切換到a分支 第二個命令 合併b分支上test.txt檔案到a分支上。y 儲存這個hunk n 不儲存這個hunk q 離開,不儲存這個hunk...