来自 cmets:
与--interactive option不兼容
实际上...它不再与 Git 2.29(2020 年第四季度)不兼容:“git rebase -i”(man)了解更多选项。
兼容的选项:
见commit 6160b2e(2020 年 8 月 26 日)Junio C Hamano (gitster)。
请参阅commit 2712669(2020 年 8 月 17 日)和 Rohit Ashiwal (r1walz)commit ef484ad(2020 年 7 月 13 日)。
请参阅Phillip Wood (phillipwood) 的commit a3894aa、commit 7573cec、commit e8cbe21(2020 年 8 月 17 日)。
(由 Junio C Hamano -- gitster -- 合并于 commit 9c31b19,2020 年 9 月 3 日)
原始补丁作者:Rohit Ashiwal
签名者:Phillip Wood
Rebase 使用两个不同的后端实现 - 'apply' 和 'merge',每个后端都支持一组不同的选项。
特别是应用后端支持由 'git am(man)' 实现的许多选项,这些选项未在合并后端实现。
这意味着可用的选项会根据使用的后端而有所不同,这会造成混淆。
此补丁添加了对合并后端--ignore-date 选项的支持。
此选项使用当前时间作为作者日期,而不是在重写提交时重用原始作者日期。
我们小心处理--ignore-date 和--committer-date-is-author-date 的组合,其方式与应用后端相同。
还有:
rebase:加--reset-author-date
帮助:Junio C Hamano
签字人:Rohit Ashiwal
之前的提交将--ignore-date 标志引入rebase -i,但名称相当模糊,因为它没有说明是否忽略作者日期或提交者日期。
添加别名以传达确切的目的。
--reset-author-date
还有:
rebase -i: 支持--committer-date-is-author-date
原始补丁作者:Rohit Ashiwal
签名者:Phillip Wood
此补丁添加了对合并后端 --committer-date-is-author-date 选项的支持。
此选项使用正在重写的提交的作者日期作为创建新提交时的提交者日期。
git rebase 现在包含在其man page 中:
--committer-date-is-author-date:
不要使用当前时间作为提交者日期,而是使用
提交的作者日期被重新设置为提交者
日期。
此选项暗示--force-rebase。
git rebase 还包含在其man page 中:
--ignore-date:
这个标志被传递给'git am'来改变作者日期
每个 rebase 提交(参见 git am)。
请注意,在 2.29(上)中,“rebase”和“am”子命令的“--committer-date-is-author-date”选项错误地丢失了电子邮件地址,已在 Git 2.29.1(Q4 2020)。
参见Jeff King (peff)commit 5f35edd、commit 16b0bb9、commit 56706db(2020 年 10 月 23 日)。
(由 Junio C Hamano -- gitster -- 合并到 commit f34687d,2020 年 10 月 26 日)
am:使用--committer-date-is-author-date 修复损坏的电子邮件
签字人:杰夫·金
Commit e8cbe2118a (am: stop exporting GIT_COMMITTER_DATE, 2020-08-17) 重写了设置提交者日期的代码以使用fmt_ident(),而不是设置环境变量并让commit_tree()处理它.
但它引入了两个错误:
- 我们使用作者电子邮件字符串而不是提交者电子邮件
- 在解析提交者身份时,我们使用了错误的变量来计算电子邮件的长度,导致它始终是零长度字符串
此提交修复了这两个问题,这导致我们通过变基“apply”后端对此选项的测试现在成功。
还有:
rebase:使用 --committer-date-is-author-date 修复损坏的电子邮件
报告人:VenomVendor
签字人:Jeff King
Commit 7573cec52c ("rebase -i: support --committer-date-is-author-date", 2020-08-17, Git v2.29.0-rc0 -- merge 列在batch #13)从builtin/am.c 复制提交者身份解析代码。
在这样做的过程中,它复制了一个错误,即我们总是将电子邮件设置为空字符串。
我们在上一次提交中修复了git-am 中的版本;此提交修复了复制的代码。