- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我最近在 Ubuntu 服务器上的私有(private)网络中设置了一个新的 gitosis。网络中的所有其他客户端都是 Windows XP 机器,除了一个 Linux 客户端
我在 gitosis.conf 中有以下设置:
[group MyProjectTeam]
writable = MyProjectRepo
members = user1 user2 user3
我还在 keydir 中放置了 user1.pub、user2.pub 和 user3.pub key 文件。 key 是使用 ssh-keygen 在 Ubuntu 服务器上生成的,并分发给各个用户。公钥的副本放在 keydir 中。
前两个用户是 Windows XP 用户,他们使用 msysgit + TortoiseGit 来处理存储库,一个用户在 Linux 机器上使用默认命令行版本的 git 访问存储库。
现在一切都设置好了,每个人都可以做他们期望做的任何事情,他们可以 pull 、推、提交 - 一切看起来都很好,除了我们检查日志时!!!
在 Linux 机器上使用 user3,我尝试了“git log”命令并得到以下输出:
commit 1b249e239d270b814aab31eed7dc6f04ceceba32
Author: User3 <Admin@ubuntu-server.(none)>
Date: Fri Sep 11 07:26:58 2009 +0530
modifed by user3
commit 646f8b11a715273dc26280fc1da2507c997f981c
Author: unknown <Admin@.(none)>
Date: Fri Sep 11 07:10:56 2009 +0530
modified by user2
commit 9f86dc7a6bfafc1c1e520d6de3dac7c613ac85cb
Author: unknown <Admin@.(none)>
Date: Fri Sep 11 06:50:22 2009 +0530
modified
commit b1a3b64005795f9592aae05c422c70a03dbb9b58
Author: admin <Admin@ubuntu-server.(none)>
Date: Fri Sep 11 06:18:54 2009 +0530
test file added by admin
这是不正确的。这个日志应该可以告诉我谁是Push的作者。我的感觉是,它为 Linux 用户提供了正确的值,因为他们的用户名和电子邮件也添加到 Linux 用户信息中,但对于 Windows 客户端,它不是真的,因此他们的名字显示不正确。但即使我在 Windows 机器上修复了名称,这也可能会通过模拟其他用户名而受到损害,为避免这种情况,我不想依赖用户名。
我希望 SSH 文件中提供的名称出现在那里,或者将推送时使用的 SSH 文件的名称添加为作者。
可能是 git 的钩子(Hook)预接收可以在这里提供帮助,但我不知道如何使用它...有人可以帮忙吗?
谢谢, pull 克什
更新:
感谢您的回答。
alexandrul,我没有设置全局设置,这是因为我希望每个用户的信息都应该真实记录。
Squelch,你是对的我可以看到省略用户名的用户,但我该如何强制他们这样做。我可以告诉他们配置他们的本地项目项目并设置用户名和电子邮件地址,但是如果有人使用假用户名或试图使用其他人的用户名和电子邮件地址,基本上是试图冒充他人怎么办?
这就是为什么我想为什么不记录私钥文件的名称,例如我已将用户 1 的文件名设置为 user1.ppk,用户 2 的文件名为 user2.ppk。在这种情况下,即使有人试图冒充他人,他们也不会成功,因为用于检查的 key 名称会告诉我真相。
有什么想法吗???
问候, pull 克什
更新 2:
感谢您的帮助。 Squelch,感谢您花时间详细解释。我认为电视的蜘蛛网有很多信息,现在就读。
到目前为止,我所做的一件事是:要求我的用户更新他们的配置以包含用户名和电子邮件地址。但我必须解决这个问题,因为我无法追逐每个用户。
我想要像 SVN+SSH 这样的东西,我们在 key 文件中使用隧道用户名,它会用 SVN 记录。
最佳答案
您是否尝试过使用以下命令设置用户名:
// global settings
$ git config --global user.name "FirstName LastName"
$ git config --global user.email "user@example.com"
或
// for a specific project
$ git config user.name "FirstName LastName"
$ git config user.email "user@example.com"
编辑:全局设置存储在 HOME 环境变量指定的文件夹中,每个 Windows 用户都应该是唯一的,因此您将拥有有关登录用户的真实数据。
关于来自 Windows 的 git push 验证将作者设置为未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1413862/
这个问题已经有答案了: Is there any way to accept only numeric values in a JTextField? (20 个回答) It's possible i
我使用戴尔 XPS M1710。笔记本电脑的盖子、侧面扬声器和前置扬声器都有灯(3 组灯可以单独调节)和鼠标垫下方的灯。在 BIOS 中,我可以更改这些灯的颜色,至少是每个组。另外,我可以在鼠标垫下打
我知道我可以使用 在 iOS 5 中打开设置应用 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs://"
我有一个 Django 应用程序,我正在尝试为其设置文档。目录结构如下: - doc - project | - manage.py 我已经设置了路径以便 Sphinx 可以看到东西,但是当我尝试使用
我正在使用 768mb ram 运行 centos 5.5。我一直在日志中获取 server reached MaxClients setting, consider raising the MaxC
我在具有以下配置的服务器内运行了 Drupal 安装: StartServers 5 MinSpareServers 5 MaxSpareServers 15 MaxClien
是否可以使用 Microsoft.Web.Administration 包为给定的 location 配置 asp 设置? 我想以编程方式将以下部分添加到本地 IIS applicationHost.
我一直在阅读为 kube-proxy 提供参数的文档,但没有解释应该如何使用这些参数。我使用 az aks create 创建我的集群使用 azure-cli 程序,然后我获得凭据并使用 kubect
我想知道与在 PHP 中使用 setcookie() 函数相比,在客户端通过 JavaScript 设置一些 cookie 是否有任何明显的优势?我能想到的唯一原因是减少一些网络流量(第一次)。但不是
我有一个按钮可以将 body class 设置为 .blackout 我正在使用 js-cookie设置cookie,下面的代码与我的按钮相关联。 $('#boToggle').on('click'
我有一堆自定义的 HTML div。我将其中的 3 存储在具有 slide 类的 div 中。然后,我使用该幻灯片类调用 slick 函数并应用如下设置: $('.slide').slick({
我正在创建一个应该在 Windows 8(桌面)上运行的应用 我需要: 允许用户使用我的应用启动“文件历史记录”。我需要找到打开“文件历史记录”的命令行。 我需要能够显示“文件历史记录”的当前设置。
我刚买了一台新的 MacBook Pro,并尝试在系统中设置 RVM。我安装了 RVM 并将默认设置为 ➜ rvm list default Default Ruby (for new shells)
由于有关 Firestore 中时间戳行为即将发生变化的警告,我正在尝试更改我的应用的初始化代码。 The behavior for Date objects stored in Firestore
在 ICS 中,网络 -> 数据使用设置屏幕中现在有“限制后台数据”设置。 有没有办法以编程方式为我的应用程序设置“限制后台数据”? 或 有没有办法为我的应用程序调出具有选项的“数据使用”设置? 最佳
我正在尝试使用 NextJS 应用程序设置 Jest,目前在 jest.config.js : module.exports = { testPathIgnorePatterns: ["/.n
我最近升级到 FlashDevelop 4,这当然已经将我之前的所有设置恢复到原来的状态。 我遇到的问题是我无法在新设置窗口的哪个位置找到关闭它在方括号、大括号等之前插入的自动空格的选项。 即它会自动
有没有办法以编程方式访问 iPhone/iPod touch 设置? 谢谢。比兰奇 最佳答案 大多数用户设置可以通过读取存储在 /User/Library/Preferences/ 中的属性列表来访问
删除某些值时,我需要选择哪些设置来维护有序队列。我创建了带有自动增量和主键的 id 的表。当我第一次插入值时,没问题。就像 1,2,3,4,5... 当删除某些值时,顺序会发生变化,例如 1,5,3.
我正在尝试设置示例 Symfony2 项目,如此处所示 http://symfony.com/doc/current/quick_tour/the_big_picture.html 在访问 confi
我是一名优秀的程序员,十分优秀!