我合作有两个项目,他们住在不同的服务器,A和B.
虽然A在hg
中有/opt/mercurial/bin/hg
个程序,但B在/usr/local/bin/hg
中有。{/ p>
当我想将更改拉/推到远程时,我必须手动修改.hgrc
文件,以便选项remotecmd
指向hg
的正确位置。< / p>
我想知道是否可以为不同的遥控器设置不同的remotecmd
路径,这样我每次需要时都不必手动更改hg
程序的路径远程操作。
我看到了这个问题:Setup platform-dependent hgrc但在我看来应该有一个更原生的(类似于内置设置)方式来做到这一点。到目前为止,我还没有找到它,所以欢迎任何帮助:)
谢谢!
答案 0 :(得分:2)
理想情况下,您只需将hg
二进制文件放入两台服务器上的$PATH
,您就不必再考虑它了。这可以在系统的/etc/profile
或该远程服务器上的.ssh/enviironment
中完成。大多数人从不甚至需要考虑remotecmd
。
如果它们是单独的项目(甚至是同一项目的本地单独克隆),您可以在每个存储库中的remotecmd
文件中设置.hg/hgrc
- 设置不一定必须是在~/hgrc
文件中。
另请注意,--remotecmd
可用作推送和拉取的命令行选项,因此您可以使用它,甚至可以将其与以下内容结合使用:
[alias]
pusha = push --remotecmd /opt/mercurial/bin/hg
然后你可以hg pusha
但实际上,只需尝试将hg
放入您的路径,就像其他人一样。