gpt4 book ai didi

svn - Mercurial over SSH 用户名被覆盖

转载 作者:行者123 更新时间:2023-12-04 14:18:14 24 4
gpt4 key购买 nike

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

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

那么,在 Mercurial 中,是否可以使用在 Ubuntu 上创建的同一组用户,以便在开发人员通过 SSH checkin (而不是在 hgrc 中设置的本地用户名)时使用并记录为作者??

hg clone ssh://user@192.168.2.2//hg/support

是我正在尝试使用的。它适用于作者问题。

最佳答案

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

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

这不被视为问题,原则是:如果您不相信您的开发人员设置了正确的名称,那么您可能一开始就不应该让他们访问推送代码。作者只是有用的元数据,不具有权威性。

如果您仍然需要以某种方式记录这个,您可以做的是创建一个推送日志,使用一个钩子(Hook)来记录哪些用户推送了哪些变更集。例子在那里,例如Mozilla 有一个,google 的“mercurial pushlog”。

关于svn - Mercurial over SSH 用户名被覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10931886/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com