git-replay
实验性:在新基础上重放提交,也适用于裸仓库。
概要
bash
(EXPERIMENTAL!) 'git replay' ([--contained] --onto=<newbase> | --advance=<branch> | --revert=<branch>)
[--ref=<ref>] [--ref-action=<mode>] <revision-range>描述
获取一系列提交并将它们重放到新位置。保持工作树和索引不变。默认情况下,使用原子事务更新相关引用(所有引用更新或都不更新)。使用 --ref-action=print 避免自动引用更新,而是获取可以管道传输到 git update-ref --stdin 的更新命令。
此命令是实验性的。行为可能会改变。
选项
--onto=<newbase>:创建新提交的起点。可以是任何有效的提交,而不仅仅是现有的分支名称。当指定--onto时,修订范围中的分支将被更新以指向新提交。--advance=<branch>:创建新提交的起点;必须是分支名称。历史在 <branch> 之上重放,<branch> 被更新以指向结果历史的提示。--revert=<branch>:创建还原提交的起点;必须是分支名称。当指定--revert时,修订范围中的提交被还原(它们的更改被撤消),还原的提交在 <branch> 之上创建。--contained:更新指向 <revision-range> 中提交的所有分支。需要--onto。--ref=<ref>:覆盖使用重放结果更新的引用。引用必须完全限定。--ref-action[=<mode>]:控制如何更新引用。模式可以是update(默认,使用原子事务直接更新引用)或print(输出用于管道使用的 update-ref 命令)。<revision-range>:要重放的提交范围。有关详细信息,请参阅 git-rev-parse(1) 中的"指定范围"。
另请参阅
Git
git 套件的一部分
