GitHub 恢复或重置?

标签 git github merge reset revert

正如你在图片中看到的,我正在功能forum_kolo_3工作,我决定完成该功能并将其 merge 到开发中(但没有将更改推送到远程开发,所以它只是本地更改),然后我意识到这是一个坏主意,现在我想删除这个 merge ,就像它从未发生过一样。

与此处描述的情况类似:git revert not allowed due to a merge but no -m option was given

但我不太确定现在该怎么做,是逆转还是重置? 我想撤消刚刚所做的 merge 。

我还发现了这个How to revert Git repository to a previous commit?

git revert --no-commit 0766c053..HEAD

git commit

这似乎是一个更好的主意......但我不知道

sourctree

最佳答案

git revert当您想要撤消的更改已发布时非常有用。它基本上恢复由另一个提交操作的更改(删除添加的行,添加删除的行,在另一个方向更改已更改的行)。

它与“撤消”操作类似,但它通常发生在其他提交已添加到分支并创建新提交之后。

now I want to remove this merge, like it never happened.

由于您没有发布更改,因此最好的解决方案是使用 git reset --hard .

如果您使用develop分支,你最后的命令是 git merge feature/forum_kolo_3 ,通过运行 git reset --hard HEAD^1 。它将当前分支 ( develop ) 移动到 merge 提交的第一个父级(即 merge 之前的位置)。

关于GitHub 恢复或重置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44799555/

相关文章:

php - 使用 git 的 php 和 mysql 的本地和生产版本

git - 尝试使用 git2-rs/libgit2 推送到远程时出现 "request failed with status code: 401"错误

github - 使用 heroku CLI 部署 GitHub 分支

r - 合并具有不同行号的文件

r - 如何将参与者数量更改为特定值?

git - 无法访问 '/Users/dida/.config/git/attributes' : Permission denied

git - 如何在 GitHub 上的子目录中创建 README 文件

r - 如何使用 devtools install_github 从私有(private)仓库安装 R 包?

java - 合并 n 个列表中的 HashMap

git - 从 pull 请求中删除修改后的文件