我和一个朋友一起在一个项目上工作,他编辑了一堆本不应该编辑的文件。我以某种方式将他的作品合并到我的作品中,无论是在我拉出它时,还是当我试图只选择想要的特定文件时。我一直在寻找和玩耍很长时间,试图弄清楚如何删除包含对这些文件所做的修改的提交,这似乎是在还原和变基之间的一次折腾,并且没有简单的示例,并且文档假定我比我知道的更多。
因此,这是问题的简化版本:
在以下情况下,如何删除提交2?
$ mkdir git_revert_test && cd git_revert_test
$ git init
Initialized empty Git repository in /Users/josh/deleteme/git_revert_test/.git/
$ echo "line 1" > myfile
$ git add -A
$ git commit -m "commit 1"
[master (root-commit) 8230fa3] commit 1
1 files changed, 1 insertions(+), 0 deletions(-)
create mode 100644 myfile
$ echo "line 2" >> myfile
$ git commit -am "commit 2"
[master 342f9bb] commit 2
1 files changed, 1 insertions(+), 0 deletions(-)
$ echo "line 3" >> myfile
$ git commit -am "commit 3"
[master 1bcb872] commit 3
1 files changed, 1 insertions(+), 0 deletions(-)
预期的结果是
$ cat myfile
line 1
line 3
这是我一直尝试还原的示例
$ git revert 342f9bb
Automatic revert failed. After resolving the conflicts,
mark the corrected paths with 'git add <paths>' or 'git rm <paths>'
and commit the result.
牛魔王的故事
回首忆惘然
江户川乱折腾