3

我合作了两个项目,它们位于不同的服务器中,A 和 B。虽然 A 有hg程序/opt/mercurial/bin/hg,B 有它/usr/local/bin/hg

当我想将更改拉/推到任一远程时,我必须手动修改.hgrc文件才能使选项remotecmd指向正确的hg.

我想知道是否可以remotecmd为不同的遥控器设置不同的路径,这样我就不必在hg每次需要进行远程操作时手动更改程序的路径。

我看到了这个问题:Setup platform-dependent hgrc,但在我看来,应该有一种更本机(类似于内置设置)的方式来执行此操作。到目前为止我还没有找到它,所以欢迎任何帮助:)

谢谢!

4

1 回答 1

2

理想情况下,您只需将hg二进制文件放入$PATH两台服务器上,您就不必再考虑它了。这可以在系统/etc/profile.ssh/enviironment远程服务器上完成。大多数人甚至从不需要考虑remotecmd

如果它们是单独的项目(甚至是同一项目的本地单独克隆),您可以在每个存储库remotecmd中的.hg/hgrc文件中设置 - 设置不必只是在您的~/hgrc文件中。

另请注意,--remotecmd它可用作推送和拉取的命令行选项,因此您可以使用它,甚至可以将其与以下内容结合使用:

[alias]
pusha = push --remotecmd /opt/mercurial/bin/hg

然后你可以做hg pusha

不过,真的,试着hg像其他人一样进入你的道路。

于 2012-06-17T13:41:33.860 回答