相关疑难解决方法(0)

Git中作者和提交者之间的区别?

我想做一个提交

git commit --author="John Doe <john@doe.com>" -m "<the usual commit message>"
Run Code Online (Sandbox Code Playgroud)

其中John Doe是我想要提交其名称的某个用户.

看起来好像在git log.但是,当我这样做时gitk,作者姓名是正确的,但是从我的全局git配置设置中选择了提交者名称(因此设置为我的姓名/电子邮件).

问题

  1. 两者之间有什么区别(提交者与作者)?

  2. 我是否应该将提交者设置为其他用户?

  3. 如果有,怎么样?

git gitk git-config

218
推荐指数
3
解决办法
7万
查看次数

git squash在保留作者信息的同时提交

我的同事(在这里叫他约翰)和我一起工作。我们的工作分支如下所示

--o--o--o # this is develop branch
   \   o--o--o # this is John's branch
    \ /       \
     o----o--o--o--o--o--o # this is our cowork branch
      \                 /
       o--o--o--o--o--o  # this is my branch
Run Code Online (Sandbox Code Playgroud)

我们已经完成工作,并准备合并我们的同事以开发分支机构。

此时,cowork分支中有很多提交,其他开发人员预计不会看到。所以我想将那些提交压缩为一次提交。

但是在压扁(解决了一些冲突)之后,我发现所有作者信息都直接指向我,没有John的信息。

因此,我的问题是,在将这些提交合并在一起时,是否可以保留John和我的信息?

git

9
推荐指数
2
解决办法
2699
查看次数

NotIf 或 Else 条件 gitconfig

遵循this SO post链接指南,我设置了如下条件配置...

$ cat ~/.gitconfig 
[user]
    name = Random J. Hacker
    email = RandomJ@hack.er
[includeIf "gitdir:~/work/*"]
    path = ~/work/.gitconfig

$ cat ~/work/.gitconfig 
[user]
    name = Serious Q. Programmer
    email = serious.q@programmer.biz
Run Code Online (Sandbox Code Playgroud)

这样,我在 Programmer Co. 工作时克隆的所有存储库都将我的@programmer.biz工作电子邮件地址分配为默认--author凭据;我克隆到我的桌面或/tmp/~/.vscode或任何地方的每个随机存储库都将我的超级合法@hack.er凭证分配为作者。

不幸的是,我注意到以下行为......

$ git clone git@github.com:programmerbiz/repo.git
$ cd repo/
$ git config --list | grep user
user.name=Random J. Hacker
user.email=RandomJ@hack.er
user.name=Serious Q. Programmer
user.email=serious.q@programmer.biz
Run Code Online (Sandbox Code Playgroud)

不好了!我的@hack.er用户被业务回购接收了!

我想为所有 repos自动配置一个且只有一个默认值 …

git git-config

7
推荐指数
1
解决办法
997
查看次数

如何用多个作者创建GitHub提交?

我有时想给那些为我设计一些东西的用户提供道具,给了我这个想法,创造了导致公关的问题或提交了我关闭的公关但最终自己加了一半.

如何添加GitHub上共同提交的提交?

git github

5
推荐指数
2
解决办法
710
查看次数

标签 统计

git ×4

git-config ×2

github ×1

gitk ×1