git - 使用 rebase 拉到特定的提交
问题描述
这是一个带有变基扭曲的旧问题的变体。
我想做一个git pull --rebase
但只做一个特定的提交。这不是拉特定的提交,而是拉到特定的提交。远程主机如下所示。
A<-B<-C<-D<-E<-F<-HEAD (Remote master HEAD)
假设我的本地特征分支 HEAD 指向 G 指向 D:
A<-B<-C<-D<-G<-HEAD (Current local feature branch HEAD).
我想用 rebase 拉到 E 以便我的分支最终看起来像:
A<-B<-C<-D<-E<-G<-HEAD (local feature branch end goal).
然而,这只是一个特例。我想选择任何符合条件的提交哈希,而不仅仅是上面示例中的倒数第二个。
自然,我希望提交 E 的哈希在操作结束时与远程主机匹配。我强调这一点,因为某些类型的交互式变基编辑会导致该属性消失。
我该怎么办?
解决方案
从远程获取更改:
git fetch origin
重新定位到 master 的远程版本,忽略一些提交:
git rebase origin/master~<n>
哪里<n>
是master
您要忽略的提示的提交次数。
如果你有你想要变基的提交的 id,你可以使用它来代替:
git rebase <commit-id>
推荐阅读
- c# - IoT 事件网格订阅在移动设备中不起作用
- javascript - Node.js:调用递归函数的后处理结果
- docker - TF_FORCE_GPU_ALLOW_GROWTH=true 在多模型服务的张量流中的行为(保存的模型格式)
- javascript - package.json 文件在资源管理器可视代码中不可见
- mysql - MariaDB 中选择额外列时 SQL 响应缓慢
- android - 如何以编程方式向微调器添加边距?
- email - 如何配置 QnA Bot 的邮件通道?
- html - 我无法更改我的 html 中的段落颜色
- flutter - 动态切换脚手架主体
- java - 如何将重复值列表转换为关于 T 类字段的不同值列表