如何删除git commits但保留更改?

时间:2019-10-13 18:49:44

标签: git

我与常规文件一起提交了一个非常大的文件。我想让远程人员忘记我刚才所做的提交,但是我发现的所有教程都谈到恢复到先前的提交,这会使我丢失所有更改。我只想删除提交但保留更改,然后可以将大文件添加到gitignore并推送更改

1 个答案:

答案 0 :(得分:1)

据我了解,您希望删除包含新的大文件的最后一次提交(我假设您的提交中只有这个文件),所以:

A-:如果您可以强制在远程存储库上提交(并且如果您的同事已经撤消您的提交,也不会使您一团糟):

1-删除最后一次提交而不丢失更改:git reset HEAD~1

2-将大文件添加到.gitignore,您可以将其添加到     .git/info/exclude改为忽略您的本地文件     工作副本。

3-提交.gitignore(如果已更改)。

-4- git push --force origin <your_branch>

B-(如果您不能/不使用git push --force

1-在本地存储库之外的某处复制文件。

2-还原上一次提交: git revert HEAD

3-将文件带回本地存储库。

4-将它添加到您的.gitignore.git/info/exclude中(随您便!)。

-5- git push origin <your_branch>