我有一个本地存储库,我需要返回并更改提交内容。我需要这样做的原因是因为在提交中我添加了一个被删除到提交的文件,而这毕竟不是我想要做的。我想用原来的名字把它保存在那里。
以下解释是在我的本地存储库本地开发分支。
初始提交是Laravel 5.2默认安装中的所有文件。我总是被告知要将.env.example文件更改为.env然而我不知道它也是一个好主意,包含这个文件就像是这样,如果有人要分叉它然后他们知道他们需要在应用程序中包含哪些环境变量。
在我的第二次提交中,我将文件重命名为.env,但是对于开发分支,我希望将文件保留在开发分支中。
如何回到第二次提交并删除我删除该文件的事实?
答案 0 :(得分:0)
好的,我们假设该文件名为filename
,删除它的提交是abc123
。运行以下命令:git rebase -1 abc123~
。这将弹出编辑器,其中包含以abc123
开头的所有提交。在第一行,将“选择”更改为“编辑”,然后关闭编辑器。 Git将重播abc123
,然后停止。此时,使用git checkout head~ -- /path/to/filename
恢复您的文件,然后使用git commit --amend -C head
修改提交。然后Git将重播其余的提交,你应该没事。
答案 1 :(得分:0)
修改最近的提交
git commit --amend
修改以前的提交和/或多个
git rebase
这些都在其他地方有详细记录,快速搜索或git help
将向您显示文档。