簡體   English   中英

即使我在提交之前 git 添加了所有文件,我也可以恢復到只有一個文件的先前版本嗎?

[英]Can I revert to a previous version of just one file even if I git added all files before a commit?

即使我在提交之前 git 添加了所有文件,我也可以恢復到只有一個文件的先前版本嗎?

所以,這就是我所做的: git add . 然后git commit -m "my changes"然后git push

所以出現了很多其他的 git add 。 並在"my changes"和當前負責人之間提交。

即使我 git 添加了多個文件( git add . ),是否可以僅對一個文件恢復到"my changes"狀態?

您問題中的全部擔憂是基於對 Git 是什么的完全誤解。

每個提交都包含所有文件。 它們都是整個項目的快照。 git add只是告訴 Git 在下一次提交時要特別注意工作樹中的哪些文件,但是無論您是否通過在特定提交之前說git add明確包含一個文件,如果該文件在之前的提交中,則它在此后的每次提交。

所以你說git add . 與任何事情都完全無關。

問題很簡單,您是否可以恢復文件的狀態。 答案是肯定的,當然; 每個提交都包含所有文件,因此只需找到您喜歡該特定文件狀態的提交並提取它:

git restore --source=<thatCommitSHA> -- thatFile

現在git add該文件(以及您喜歡的任何其他內容)並提交。

暫無
暫無

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

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