git delete and revert

big_shark發表於2024-05-17

delete or revert the commit

# soft 移動頭節點, 同時將刪除更改儲存到暫存區,同時 工作區不變 --- non-destructive
git reset --soft HEAD~{num}/{hash} 
git reset --hard HEAD~{num}/{hash}  #回退,同時暫存區和工作區都會被重置和commit一樣
git reset --mixed HEAD~{num}/{hash} #移動頭節點, 保留工作目錄,並清空暫存區


# 在可互動介面進行操作
git rebase -i HEAD~{num}/{hash} 

commit --> working space

還原工作區內容

git checkout {file_name}
git checkout HEAD~{num}/{hash} {filename}
git checkout {branch_name} {filename}

撤回 暫存區的內容

git restore --staged {filename} #撤回暫存區的檔案,不影響工作區
git restore {filename} # 將工作區檔案恢復到上次提交的狀態

revert

git revert {head}/{hash}

生成一個負修改,可以用於中和其他commit的修改。常用與恢復之前一個commit 的修改, 還有一種請款 就是遠端上有個錯誤,我們需要刪除一個commit 的修改,我們不能刪除一個節點,但是可以使用 revert 生成一個負節點

k3inYfExP6SJ9uD.png

相關文章