git - 希望恢复/删除远程提交以解决合并冲突
问题描述
git新手。
我不小心在一个过时的分支上工作,并将 6 个提交推送到远程开发分支。当我提交合并请求(开发>主)时,我落后了几个提交,所以我关闭了请求。
我不确定解决这个问题的最干净的方法是什么。我可以git revert
将我的开发提交回来,从 master 签出一个新分支,再次进行更改,推回开发,并在没有冲突的情况下合并吗?由于还原添加了另一个提交,我不知道这是否会影响我的问题。
我不介意再次进行更改,我只是想确保我可以毫无问题地进行合并,并且在我完成后让所有内容保持最新。我已经查看了其他选项,例如git reset
,但如果我错了,我宁愿不要增加问题。
下面是输出git log --graph --oneline --all
- a9024a3(起源/发展,发展)
- e9398de
- af2889d
- e8a0fea
- 8681f8a
- 84e80a5
- ccf55a0
- 81de4ff
- c2bb35c
- 9e4dcb2
- 20d385d
- a7a86b8 | * 331200a (HEAD, origin/master, origin/HEAD, master) 合并分支'development' 到'master' | |\
|/ /
| * 645a6f7 |/- f6b10dd
解决方案
从您所写的内容来看,您似乎正在尝试避免合并冲突。如果是这种情况,我的建议是你应该学会处理它们,因为它们在使用 CVS 时很常见。做你问的正确方法是变基。revert 不会删除提交,而是创建新的“反向”提交以重置更改。有一些方法可以“删除提交”(即重置),但强烈建议不要使用这些方法,因为如果有人已经拉了它们,你可能会弄乱 repo。看
https://git-scm.com/book/en/v2/Git-Tools-Reset-Demystified
推荐阅读
- r - GEE 回归将 NaN 值作为数据帧子集的结果
- java - 如何在没有转换错误的情况下添加到新的 ArrayList?
- java - 每半秒同步一次数据库是个好主意吗?
- facebook - Facebook 应用邀请的应用链接 URL
- android - button_object.findViewByid(R.id.button_id) & button_object=(Button)findViewById(R.id.button_id)
- pyqt - pyqt4 将图像设置为中心小部件
- google-cloud-firestore - 获取 id 作为 Firestore 中的字段
- python - 如何使用 python 编辑 Visio 文件 (vsdx) 中的文本?
- laravel - 日期未显示在视图中
- c# - 连接字符串不是工作对象实例引用为空