我们想要使用git,一个非常重要的事情是,如果有人提交了某些东西,我们需要知道究竟是谁。由于我们通过https访问git,因此我们需要将htpasswd登录信息放入git commit日志中。这可能吗?git log作者姓名来自htpasswd
问候
菲利普
我们想要使用git,一个非常重要的事情是,如果有人提交了某些东西,我们需要知道究竟是谁。由于我们通过https访问git,因此我们需要将htpasswd登录信息放入git commit日志中。这可能吗?git log作者姓名来自htpasswd
问候
菲利普
有了这样gitosis或gitolite的包装,你可以控制用户是否正确设置他/她的用户名/电子邮件,并且只允许这些提交。
参见“Git/gitosis: How to check validity of user name and email?”。
这种方法显然是用于“中央”Git回购服务器,因为它可以访问htpasswd
文件。
所有用户Git客户端仍然可以设置他们的用户名看起来合适,但是当他们被推送到特定的服务器时,他们的提交将被拒绝。
使用Git http-backend,Gitolite可以正常工作(当然对于集中式repo push/pull;自定义命令可能有点棘手)。有关如何操作的文档,请参阅https://github.com/sitaramc/gitolite/blob/pu/doc/http-backend.mkd。
感谢您的回复,但所有这些工具都使用ssh进行授权,我们需要通过https进行。我不知道我是否正确阅读,但我们的使用案例是,我们希望与我们的客户使用git,因此ssh公钥等是没有选择的,因为它对于客户来说太复杂了。 所以我们现在有一个用于用户认证的apache,webdav,ssl和htpasswd。 Registers Phillip – 2010-12-13 13:23:20
@Phillip:我不知道没有使用ssh的解决方案,但我怀疑这可能是一个简单的预先接收挂钩,如http://stackoverflow.com/questions/中所述。 4427316 /防止-git的推抵-远程存储库时-用户名 - 的 - 推动器 - 是 - 不configu/4427383#4427383 – VonC 2010-12-13 13:45:45