Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Svn 重写用户名的SSH上的Mercurial_Svn_Mercurial_Ssh - Fatal编程技术网

Svn 重写用户名的SSH上的Mercurial

Svn 重写用户名的SSH上的Mercurial,svn,mercurial,ssh,Svn,Mercurial,Ssh,我正在将我们公司的SCM从SVN迁移到mercurial 目前的情况是这样的。 SVN运行在专用于它的独立Ubuntu服务器上。 因此,所有开发人员都在使用Ubuntu服务器上创建的用户,使用“svn+ssh”协议从各自的机器上签入和签出代码。因此,无论他们在SSH上使用哪个用户,它都会作为变更集的作者记录在repo上 因此,在Mercurial中,当开发者通过SSH(而不是hgrc中设置的本地用户名)登录时,是否可以使用在Ubuntu上创建的同一组用户作为作者使用和记录 hg克隆ssh://u

我正在将我们公司的SCM从SVN迁移到mercurial

目前的情况是这样的。 SVN运行在专用于它的独立Ubuntu服务器上。 因此,所有开发人员都在使用Ubuntu服务器上创建的用户,使用“svn+ssh”协议从各自的机器上签入和签出代码。因此,无论他们在SSH上使用哪个用户,它都会作为变更集的作者记录在repo上

因此,在Mercurial中,当开发者通过SSH(而不是hgrc中设置的本地用户名)登录时,是否可以使用在Ubuntu上创建的同一组用户作为作者使用和记录

hg克隆ssh://user@192.168.2.2//hg/support


这就是我想用的。如果不是针对作者的问题,它是有效的。

不,这是不可能的。您遇到了中央版本控制和分散版本控制之间的根本区别

在DVCS中,作者在每个开发人员的本地配置中配置,并在提交更改后立即设置。在此之后,提交是不可变的,其散列是固定的,因此当您推送它时,服务器无法更改作者

这并不是一个问题,咒语是:如果您不信任您的开发人员设置正确的名称,那么您可能不应该首先让他们访问推送代码。作者只是有用的元数据,不是权威性的


如果您仍然需要以某种方式记录这一点,您可以做的是创建一个pushlog,使用一个钩子记录哪些用户推送了哪些变更集。例如,Mozilla有一个,google代表“mercurial pushlog”。

如果我推动自己和其他人所做的更改,会怎么样?他们都改成我了吗?@robert,实际上每个开发人员都有单独的密码登录,只有分配给他们的开发人员知道。所以你的零钱是你的,他的也是他的。哦,太好了!!谢谢Laurens让我看看pushlog是如何为我工作的。:)@劳伦斯·霍尔斯特很合适。考虑跳过PoPoG也可能比你想象的要重要得多。