- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
在this article ,作者用这张图解释了 rebase :
Rebase: If you have not yet published your branch, or have clearly communicated that others should not base their work on it, you have an alternative. You can rebase your branch, where instead of merging, your commit is replaced by another commit with a different parent, and your branch is moved there.
虽然正常的 merge 看起来像这样:
所以,如果你 rebase ,你只是失去了一个历史状态(这将在未来的某个时候被垃圾收集)。 那么,为什么有人想要做一个 rebase?我在这里缺少什么?
最佳答案
在多种情况下您可能想要 rebase 。
您在不同的分支上开发功能的几个部分,然后意识到它们实际上是想法的线性进展。将它们重新设置为该配置。
您从错误的地方 fork 了一个主题。也许为时过早(您需要稍后的东西),也许为时已晚(它实际上也适用于以前的版本)。将其移动到正确的位置。 “为时已晚”的情况实际上无法通过 merge 来解决,因此 rebase 至关重要。
您想测试一个分支与另一个分支的交互,但出于某种原因不想 merge 。例如,您可能希望逐个提交地查看哪些冲突突然出现,而不是一次全部出现。
这里的总体主题是过度 merge 会使历史变得困惑,如果您一开始没有正确制定分支/merge 计划,则 rebase 是一种避免这种情况的方法。太多的 merge 会让人们难以追踪历史,也会让像 git-bisect
这样的工具变得更难使用。
还有很多情况会提示交互式 rebase :
多次提交应该是一次提交。
一次提交(不是当前提交)应该是多次提交。
提交(不是当前提交)或其消息有错误。
应删除提交(不是当前提交)。
应重新排序提交(例如,使流程更符合逻辑)。
虽然您在做这些事情时确实“失去了历史”,但实际情况是您只想发布干净的作品。如果某些内容仍未发布,可以对其进行 rebase 以将其转换为您应该提交它的方式。这意味着公共(public)存储库中的最终版本将合乎逻辑且易于遵循,不会保留开发人员在此过程中遇到的任何问题。
关于algorithm - 与 git 中的 merge 相比,rebase 有什么优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2876477/
这个问题在这里已经有了答案: 11年前关闭。 Possible Duplicate: Haskell: difference between . (dot) and $ (dollar sign) 好
我对 Java 平台没有任何了解,我想知道可以使用哪些工具(和方法)来帮助开发用 Java 编写的可维护代码。 我知道可以使用: 适用于任何环境的敏捷方法 用于单元测试代码的 jUnit/jMock(
我们的产品需要支持 IE9,但我们一直假设 IE9 支持 IE10+ CSS 规则。 是否有一种巧妙的方法来获取在 IE10+ 中有效但在 IE9 中不受支持的所有 CSS 规则,目的是在静态代码分析
我需要为 MyString 类重载运算符 + 和 +=。 MyString.h class MyString { char* m_pStr; }; 主要
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在升级现有的旧代码以使用 VS 2019*,在代码中我有以下函数在返回行失败: int foo(const char *fn) const { ofstream out(fn,ios::b
我想使用 R2D3 pacakge 在 R 中,但我不确定这个包与 D3.js 库的关系。 R2D3 是否以任何方式限制 D3 的功能?我们可以将 R 中的所有 D3 功能和特性与 R2D3 一起使用
我正在使用 WPF 语音识别库,试图在桌面应用程序中使用它来替代菜单命令。 (我想专注于没有键盘的平板电脑体验)。它可以工作 - 有点,除了识别的准确性太差以至于无法使用。所以我试着听写到 Word。
我在学校参加数据库类(class)。老师给了我们一个简单的练习:考虑以下简单的模式: Table Book: Column title (primary key) Column gen
我正在尝试学习 MVVM 模式,特别是当 View 表示数据库表时该怎么做,但 View 有几个元素表示单个数据库字段。举个简单的例子: 假设我有一个 DateTime 类型的数据库字段(每个数据库字
我有两张 table 。表单有约 77000 行。日志约有 270 万行。 以下查询将在不到一秒的时间内返回“30198”: SELECT COUNT(DISTINCT logs.DOCID) FRO
当您在 Eviews 中进行回归时,您会得到一组这样的统计数据: 在 R 中有没有一种方法可以在一个列表中获得所有/大部分关于 R 回归的统计数据? 最佳答案 请参阅summary,它将为大多数回归对
如果我枚举 type XType int const ( X1 XType = iota X2 ... Xn ) var XTypeNames = []string{"x1", "x2
我正在试用 ranger R包加速做了很多randomForest计算。我正在检查我从中得到的预测,并注意到一些有趣的事情,因为所做的预测完全不正确。 以下是比较 randomForest 的可重现示
我发现 Clang 编译速度比 GCC 慢了四倍。知道是什么原因造成的吗? ebg@tsuki(250)$ time /usr/bin/cc -DHC4 -DSAFETY -DNOREDUCE -DN
我注意到在尝试以 JSON 格式发布表单数据时,以下内容不起作用: $.ajax({ type: "POST", url: url, data: JSON.string
我的代码库中有很多 #if DEBUG/#endif 语句,它们大多具有断言类型逻辑,我不敢在生产环境中运行这些逻辑。 [Conditional("DEBUG")] public void Check
所以我正在开发一个平方根计算器,但我不知道 while 循环是否比 do while 循环更适合。 double x, y = 1.0, newY, squareRoot; bool
我有两个列表,一个是所有语言,另一个是网站拥有的语言子集,我的想法是返回所有语言,但如果子集的元素对应于所有语言的列表,则更改 bool 值的属性. 语言的DTO: public class DTOL
以下控制台应用程序运行正常 - 我很惊讶它没有出错。 class DelegateExperiments { //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
我是一名优秀的程序员,十分优秀!