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