我已經對作為一組檔案的一部分提交了幾次的檔案進行了一些更改,但現在想重置/恢復其上的更改回到以前的版本.
我已經完成了一個git log
和一個git diff
來找到我需要的修訂,但只是不知道如何在過去將檔案恢復到其原狀態.
我已經對作為一組檔案的一部分提交了幾次的檔案進行了一些更改,但現在想重置/恢復其上的更改回到以前的版本.
我已經完成了一個git log
和一個git diff
來找到我需要的修訂,但只是不知道如何在過去將檔案恢復到其原狀態.
假設您想要的提交的雜湊是c5f567
:
git checkout c5f567 -- file1/to/restore file2/to/restore
git checkout man page提供了更多資訊.
如果您想在c5f567
之前恢復提交,請附加~1
(與任何數字一起工作):
git checkout c5f567~1 -- file1/to/restore file2/to/restore
作為一個側面,我一直對這個命令感到不舒服,因為它既適用於普通事物(在分支之間更改),也適用於異常的破壞性事物(丟棄工作目錄中的更改).