Version control 我可以在Bazaar中编辑旧版本的消息吗?

Version control 我可以在Bazaar中编辑旧版本的消息吗?,version-control,versioning,bazaar,revision,Version Control,Versioning,Bazaar,Revision,如何编辑旧版本的消息以更正确地描述其更改?否,您不能编辑旧版本的提交消息。Bazaar中的修订是不变的。您必须根据必须更改的修订重新构建分支。如果不更改已修改修订及其所有子版本的修订id,则无法编辑旧修订的提交消息 嗯。。。从技术上讲,如果您足够努力,您可以做到,但结果的技术术语是“损坏的存储库”。bzr中的存储库是分布式修订数据库的副本,如果所有副本对修订内容不一致,则存在完整性冲突。也就是说,所有的赌注都是无效的,系统将积极尝试检测这种情况并拒绝工作 要修改分支中最后一个修订版的提交消息,可

如何编辑旧版本的消息以更正确地描述其更改?

否,您不能编辑旧版本的提交消息。Bazaar中的修订是不变的。您必须根据必须更改的修订重新构建分支。

如果不更改已修改修订及其所有子版本的修订id,则无法编辑旧修订的提交消息

嗯。。。从技术上讲,如果您足够努力,您可以做到,但结果的技术术语是“损坏的存储库”。bzr中的存储库是分布式修订数据库的副本,如果所有副本对修订内容不一致,则存在完整性冲突。也就是说,所有的赌注都是无效的,系统将积极尝试检测这种情况并拒绝工作

要修改分支中最后一个修订版的提交消息,可以使用“bzr uncommit”,然后在新提交消息中使用“bzr commit”

要修改旧版本的提交消息,您需要得到一个分支,您要修改它的上一个版本,使用“uncommit”然后是“commit”,然后使用“bzr rebase”或“bzr replay”(来自“rewrite”插件)重新附加后续版本


在任何情况下,这都会产生一个分支,它被认为与最初的分支“不同”。如果最初的分支已发布,您的原始修订可能会再次导致痛苦的合并、历史污染,并且通常会困扰您。

如果它是您上次提交的修订,您可以
bzr commit--unchanged
向日志中添加内容。这并不是你想要的,但如果你认为Bazaar的警告很重要的话,这可能是下一个最好的选择。

“Bazaar中的版本是不可变的”——还有其他版本的源代码管理系统吗?有人看到过在CVS和Subversion中编辑过去的版本。它仍然是“坏的”。但在集中式VCS中编辑提交消息并不会破坏任何东西(除了可能镜像到DVC)。在Bazaar中,这样的更改是严格禁止的,因为它们会导致分布式数据库的完整性冲突。在Git和Hg中,它们是设计上不可能的。