如何在与不同用户提交时在“git log”中显示不同的名称

时间:2012-03-15 10:19:40

标签: git

让我先说我是一个巨大的Git(和Ubuntu)菜鸟。我会尝试尽可能清楚地解释我的问题,但我发现这很难,因为我不确定我在做什么,或者我是否正在使用正确的方法。

情况如下:

我有一个带有裸仓库的远程Ubuntu服务器(/opt/git/repo.git)。我的服务器上有两个用户:bramtest,两者都在组git中。 Git具有对目录的写访问权。两个用户都使用git config --global配置了不同的名称和电子邮件。 /home/bram/.gitconfig的内容:

[user]
        name = Bram Van der Sype
        email = ...
[core]
        editor = vim

/home/test/.gitconfig的内容

[user]
       name = Test test
       email = ... 

在我的本地计算机上(Windows 7)我有2个repo克隆:一个实际的开发仓库,用bram签出,第二个克隆(仅用于测试,在不同的目录中)已与test签出。

我做了什么:

更改了第二个测试克隆中文件的某些行。然后我在本地提交这些行并将它们推送到原点(使用SSH,我被要求提供test密码)。我切换到实际的开发目录,做了git pull origin master并打开了更改的文件。我看到测试目录中已完成更改的行。然后,我执行git log -2git blame index.php,希望看到与test关联的user.name链接到提交和更改。

然而,我看到的唯一名称是bram

我想要什么?

能够看到谁做了实际的提交。这是我可以用gitosis做的事情(我在google搜索时看到的东西)?我配置错了吗?我是否需要从另一台机器/ Windows用户帐户提交?欢迎任何帮助,说明或文档参考!

2 个答案:

答案 0 :(得分:1)

你确定,在两个回购中都有不同的设置,我的意思是

$TEST_REPO/.git/config$BRAM_REPO/.git/config

[user]
        name = Name
        email = email@address.com

...

答案 1 :(得分:1)

提交更改时,您需要以该特定用户身份登录。谁克隆了回购并不重要。我怀疑你在更改测试仓库时登录了bram。