我想更改我的 gitignore 以忽略我的一些文件,我按照这个问题所说的做了 。现在,当我完成这些步骤时,我看到了一长串已删除文件。目前,我提交了代码,但我担心这会删除所有文件。我想在推送代码之前完全恢复提交。
所以我的问题是:
- 如果我使用我所做的最后更改推送代码。它会删除主仓库中的文件吗?(有趣的是,我的机器中有文件。它们没有被删除。我只是一只鸡!!)
- 如何恢复我刚刚所做的最新提交,而不仅仅是编辑该日志和内容,而是完全忽略该提交。
使用git rebase HEAD~1,其中 1 - 是您要更改的提交数。这将打开您的编辑器,您可以在其中选择/挤压/编辑提交。选择所有需要的提交并保存文件(如果要删除提交,只需删除/注释行)
#pick f7f3f6d commit that I want to remove
pick 310154e updated README formatting and added blame
pick a5f4a0d added cat-file
还原:使用 找到您要还原的提交编号git log
,然后执行git checkout yourcommitnumber
。
此外,一个很好的信息来源:http: //git-scm.com/book/ch6-4.html