- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在阅读有关 git rebase
的内容,并且正在通读 - git-scm的文档。
我对使用 git rebase 的 onto
功能将分支 rebase 到它的祖 parent 有一个特别的疑问(就像上面链接中的情况一样)。
让我们假设我们有一个如下所示的分支/提交结构:
C1 <- C2 <- C5 <- C6 [master]
<- C3 <- C4 <- C10 [server]
<- C8 <- C9 [client]
现在,我想将 client
分支 rebase 到 master
上。我检查了 client
分支并运行了 git rebase --onto master server client
命令。我从这个命令得到的结果结构(在 merge 和快速转发 master 到客户端之后)是:
C1 <- C2 <- C5 <- C6 <- C8' <- C9' [master, client]
<- C3 <- C4 <- C10 [server]
我的疑问是,如果我在 client
分支中的更改取决于 server
分支中的 C3 提交怎么办。 master
分支中的结果代码在 rebase 这样的场景中肯定会失败。据我所知,实际结果(在 merge 和快速转发 master 到客户端之后)不应该是这样的:
C1 <- C2 <- C5 <- C6 <- C3' <- C8' <- C9' [master, client]
<- C4 <- C10 [server]
谁能告诉我我的理解/担忧是否有误?
最佳答案
如果你从
开始C1---C2---C5---C6 master
\
C3---C4---C10 server
\
C8---C9 client
你期望的结果是
C1---C2---C5---C6---C3'---C8'---C9' master, client
\
C4---C10 server
那么误解就是:C3'不可能是C4的祖先。这不可能发生在这里。
当你做的时候
git rebase --onto master server client
而且,正如您所说,客户端 中的更改“取决于”C3 中的更改,您可以解决 merge ,您将获得
C1---C2---C5---C6 master
\ \
\ C8'---C9' client
\
C3---C4---C10 server
现在,在 merge master 和 client 之后,您准备好 rebase server,可能会发生两种情况:
No changes - did you forget to use 'git add'? If there is nothing left to stage, chances are that something else already introduced the same changes; you might want to skip this patch.
When you have resolved this problem, run "git rebase --continue". If you prefer to skip this patch, run "git rebase --skip" instead. To check out the original branch and stop rebasing, run "git rebase --abort".
然后你可以做
git rebase --skip
你会得到
C1---C2---C5---C6---C8'---C9' master, client
\
C4'---C10' server
请注意,没有 C3',因为这些更改是通过 C8' 应用的。
git rebase --continue
你会得到
C1---C2---C5---C6---C8'---C9' master, client
\
C3'---C4'---C10' server
这意味着当 <branch>
发生变化时“取决于”<upstream>
与 <newbase>
冲突 rebase 时,git 为您提供 merge 解决机制,作为一种选择是现在还是以后需要这些更改的方式。
关于git rebase 分支与祖 parent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26578405/
我正在动态创建一个 ContextMenu,其中包含一个 ComboxBox 作为项目之一,它由两个单独的 Canvas 使用。组合框包含百分比值,因此想法是右键单击其中一个 Canvas ,选择百分
我有一个脚本,当我指定c:\ script \ 19 \的确切目录时会运行,问题是,c:\ script中有其他文件夹,例如18、17、16。我在该脚本后附加了19所有文件的最前面。我如何看待正在重命
假设我有以下内容 每当单击 f 时,我想隐藏
我对理解 React 如何将函数作为 props 传递给子组件有一些疑问。我已经看过一些教程,但目前没有理解我的问题。 基本上我有一个简单的组件向下传递一个列表,另一个组件使用 Array.map 处
我有关注对象 task_a >> task_b>> task_c task_b 有all_done 触发规则 task_c 有all_success 触发规则 如果任务 a 失败,task_c 会被执
在层次结构的事务级别,我需要访问#grid数据中的值。这可以作为参数传递还是必须使用 jQuery 遍历 DOM? $(document).ready(function () { var el
嗨,我有如下三个类,A 类是父类,B 类是 A 的子类并且其中没有任何内容,C 类是 B 的子类和具有主要功能的测试类: public class A { double pay =0.0;
我在一个 div 中有多个 div。我希望父 div 的第一个 h1 带有下划线。first-child 的问题在于它查看父 div,在我的例子中它是错误的父 div。例如:
一个组织有很多用户 schema "organizations" do field :name, :string has_many :users, TestApp.User end 一个用户有
为什么这里匿名内部类不会被释放,导致内存泄漏? FX 2.2.1 会出现这种情况。 anchorPane.getParent().getParent().lookup("#grandParentBut
完整问题: 子表通过外键(引用祖父主键)链接到其祖父表中的行,是否可以在子表的复合外键中使用引用的祖父行中的字段? 我当前的数据库设计有一个主父表,Projects。 Projects 有两个子表,J
这可能只能在 JS 中实现。我正在为页面进行响应式设计。仅当最大宽度为 768px 时,我才需要一个子元素与其父元素具有相同的背景图像。需要注意的是,父级的背景图像是由 JavaScript 根据用户
这可能只能在 JS 中实现。我正在为页面进行响应式设计。仅当最大宽度为 768px 时,我才需要一个子元素与其父元素具有相同的背景图像。需要注意的是,父级的背景图像是由 JavaScript 根据用户
我有一个概念证明,似乎可行,但是我的一部分想知道这是否真的是一个好主意,或者是否存在使用Redux或替代策略之类的更好的解决方案。 问题 基本上,我的整个应用程序都有一个基本的React组件,其中包含
我有一个“GrandParentViewController”,它包含我的应用程序的所有方法。我有一个 subview “ParentViewController”,其中包含一些 subview “C
给定一个带有显示 flexbox .wrapper 的 div(运行并查看下面的代码片段)和一个深度嵌套的 div .text-container,我如何才能将深度嵌套的 div 居中相对于 .wra
标题听起来很困惑,但很难表达! 如何在 .feature-inner div 中居中对齐 a?每当我使用通常的 margin: 0 auto; display: block; 它只是将链接拉伸(str
我有一个名为 Device 的对象。 Device 可以有一个父 Device。一个 Device 也可以有 n 个子 Devices。 我有一个下拉列表,其中显示了所有可选择的设备。我可以很容易地获
我是 LINQ 的新手,我已经能够编写一些简单的语句。但是现在我有一个更复杂的情况,我无法弄清楚。 基本上,我正在尝试编写 LINQ to Objects 语句,其中关系是祖 parent 、 par
这个问题已经有答案了: 已关闭11 年前。 Possible Duplicate: Why is super.super.method(); not allowed in Java? 我有 3 个类,
我是一名优秀的程序员,十分优秀!