将“--keep-changes”作为“hg qpush”和“hg qpop”的默认设置

3
Mercurial Queues最近增加了一个新功能,可以在本地有更改的情况下推送和弹出mq补丁,前提是这些补丁不会与本地更改冲突。这由--keep-changes标志控制。我想将此行为设置为默认行为。通常,我避免设置默认值,因为这意味着hg在我的机器上与其他机器上的工作方式不同,但在这种情况下,似乎没有害处。
例如,hg help qpop说:
With --keep-changes, abort only if the uncommitted files overlap with
    patched files.
[...]
    --keep-changes tolerate non-conflicting local changes

因此,请问有人能告诉我在.hgrc中应该添加什么内容,以便--keep-changes成为qpushqpop的默认选项吗?

请参见错误2780-如果本地更改和mq补丁不相关,则qpop应该正常工作以获取该功能的历史。可能没有设置此选项的选项,因此它不太有用。甚至没有一个字母的别名。

2个回答

2

hgrc的defaults部分应该可以满足你的需求(尚未经过测试):

[defaults]
qpush = --keep-changes
qpop  = --keep-changes

但是......默认设置已经“过时”,鼓励人们使用别名。我认为这并不意味着它们会消失,因为这将“破坏工作流程”,这在Mercurial开发中是致命的罪过。


我认为在这种特定的情况下,这个默认值是可以的,因为它总是我想要的,至少我想不出任何情况下我不希望它应用。谢谢。 - Faheem Mitha

0

阅读关于别名部分的内容,并特别注意本章节中的注释

注释

有可能创建与现有命令相同名称的别名,这将覆盖原始定义。 这几乎总是一个坏主意!


我知道关于别名的事情,不想使用它。我希望有一些设置可以保留更改,例如 ==keep-changes。据我回忆,当时有一些关于设置的讨论。也许它从未被引入? - Faheem Mitha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接