git怎么刪除已經(jīng)提交的文件

有三種方法從歷史記錄刪除文件:1) 使用 git Filter-branch 重寫歷史,移除指定文件;2) 使用 git rebase 刪除指定提交中的文件;3) 使用 git revert 還原對(duì)文件的更改并刪除它。這些方法都是不可逆的,因此使用前應(yīng)備份代碼。

git怎么刪除已經(jīng)提交的文件

如何從已提交的歷史記錄中刪除文件

方法一:使用 git filter-branch

git filter-branch 命令可用于重寫歷史記錄,從中刪除指定文件。

git filter-branch --index-filter 'git rm --cached --ignore-unmatch <path/to/file>' HEAD

方法二:使用 git rebase

git rebase 命令允許修改提交歷史記錄。您可以使用它來刪除文件,而無需重寫整個(gè)歷史記錄。

git rebase -i HEAD

選擇要從中刪除文件的提交,然后輸入 d 以刪除它。

方法三:使用 git revert

git revert 命令可用于還原對(duì)文件的更改。您可以使用它來刪除文件,而無需修改歷史記錄。

git revert <commit-hash>

注意:

  • 以上所有方法都是不可逆的,因此在使用它們之前備份您的代碼。
  • 如果您在倉庫中有多個(gè)分支,則需要使用 -f 標(biāo)志來強(qiáng)制推送到每個(gè)分支。
  • 刪除已提交的文件后,如果您不想提交更改,請(qǐng)使用 git reset HEAD –hard 來還原工作樹。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊15 分享