为了账号安全,请及时绑定邮箱和手机立即绑定

如下,提取版本一,作了修改,然后push,生成了版本三,而不是直接覆盖了版本二

如下,提取版本一,作了修改,然后push,生成了版本三,而不是直接覆盖了版本二

Git
凤凰求蛊 2023-04-19 21:17:10
我reset回first commit.然后修改了,再提交。就不行了更新如下,其实我只是想实现svn的功能。
查看完整描述

2 回答

?
www说

TA贡献1775条经验 获得超8个赞

git reset 适合在自己的分支中进行操作,当分支已经合并到远程版本库后,不建议再进行此操作。
如果远程版本库不会影响其它人更新合并(一个人的远程版本库)可以用git -f push强制推送到远程版本库。

查看完整回答
反对 回复 2023-04-21
?
杨魅力

TA贡献1811条经验 获得超6个赞

svn与git对于history的概念差别非常大。
git的push操作,相当于把当前分支合并到远程分支上。卤煮的操作实际上是这样

开始是这样:    o--o--o--o--o
后来reset:    o
再后来:    o
            \
             x--x

那么卤煮是想把从first commit后完全不同的分支合并起来,你想想remote能答应吗?如果希望合并,卤煮可以在当前分支下进行合并,例如

git merge|rebase origin/current_branch #当然在与remote进行合并的时候,尽量不使用rebase这样对history有“破坏”的操作# 接下来解决一系列冲突git push ...

又或者用本地分支替换掉remote的分支

git push origin current_branch -f


查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 168 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信