请教 git 里怎么删除记录

1 天前
 magic3584

请大佬指点:

分支情况如下图:

  1. 1 创建新的 test 分支
  2. test 分支上分别进行了 2 3 提交
  3. merge test to release 的时候产生了 4提交
  4. 删除了 test 分支

我现在想回退到 2来删除 3 4记录,是否能做到?如果可以的话,应该在哪个分支执行什么 git 命令。

3266 次点击
所在节点    git
25 条回复
realJamespond
1 天前
reset 1 -> cherry pick 2
vegetableChick
1 天前
cherry-pick
shily
1 天前
#8 假设 OP 想移除 3 、4 号提交,并重新建立 release 分支。

1.1 git tag tag-1 1 号提交的 hash
1.2 git tag tag-2 2 号提交的 hash
2. git branch --D release # 强制删除分支
3. git checkout tag-1 -b release # 使用 1 号提交的 hash 重新拉出 release
4. git merge tag-2 # merge 2 号提交到 release 分支
sampeng
1 天前
开发群里大喊一声: “所有人别提交代码。我要变身了”。
然后修复本地的代码树,push 。再大喊一声:"变身完毕,都拉一下吧"
lonenol
11 小时 10 分钟前
从 4 新拉一个分支 A ,A 分支上回退到 2

release 分支回退到 1 ,git push -f 这样远程和本地都到了 1 ,

然后把 A 分支 merge 到 release 分支 ,push 到远程

注意一下这个操作需要让同事把本地分支 reset 到 1 ,然后重新拉下远程分支。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1156172

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX