簡體   English   中英

從git還原文件

[英]Restore files from git

我在一個新的Projekt上工作。 我將所有文件添加到本地git存儲庫

git add .

但我沒有承諾。 然后我不小心重置了git

git reset --hard

如何還原我的文件? 我希望那個原子保留文件,但也保留那些不再打開的文件。 沒關系,那個原子會關閉我的所有文件。

git add文件時, git將其作為對象存儲在存儲庫中( .git目錄中)。 您的文件可能仍在徘徊。 另一方面,通過運行git reset --hard命令,您丟失了有關文件名的任何信息。

您可以通過運行以下命令查看對象本身:

find .git/objects -type f

會產生類似:

.git/objects/67/6e8ff99e42b61f96bb0107fa1dff59594eba07
.git/objects/7c/45d8f7d987c584a8d61a8d75431ddd4f1ba52f

您可以使用git cat-file命令查看這些對象的內容,如下所示:

git cat-file -p 7c45d8f7d987c584a8d61a8d75431ddd4f1ba52f

請注意,對象ID是第一級目錄中兩個字符的連接,后跟文件名中的所有字符。

因此,編寫一個腳本來還原所有文件的內容是相當瑣碎的,但是您必須在事后手動重命名它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM