【问题标题】:Setting Git username and email without using .gitconfig?在不使用 .gitconfig 的情况下设置 Git 用户名和电子邮件?
【发布时间】:2017-03-02 11:05:13
【问题描述】:

我有一个 macOS 的 dotfiles 存储库,其中包含 .gitconfig 文件。我想将 usernameemail 与此文件分开,以便这些变量永远不会作为我的公共 dotfiles 存储库的一部分提交。

我见过的一种方法是指定一个名为 .extra 的文件,将其保存在 ~/ 目录中(在 .bash_profile 中引用它)并在该文件中设置 Git 变量,以便它们是外部的到我的公共存储库,即我对.gitconfig 所做的任何公共更改将包括usernameemail

问题是设置这些值的方法都不适合我。每次尝试后,我都会收到以下消息:

您的姓名和电子邮件地址是根据自动配置的 在您的用户名和主机名上。请检查它们是否准确。 您可以通过显式设置来禁止显示此消息:

git config --global user.name "Your Name"

git config --global user.email you@example.com

完成此操作后,您可以通过以下方式修复用于此提交的身份:

git commit --amend --reset-author

我的.extra 文件中有以下内容,但他无法正常工作:

GIT_AUTHOR_NAME="First Last"

GIT_COMMITTER_NAME="First Last"

EMAIL=email@example.com

我尝试了使用这些变量和其他变量的各种方法,包括和排除引号,甚至在这些行前面加上 export。有点吃亏!

【问题讨论】:

    标签: git macos dotfiles


    【解决方案1】:

    我想出了解决办法:

    将以下内容添加到您的点文件的.gitconfig 文件中:

    [user] # These values are set in ~/.gitconfig_local

    [include] path = ~/.gitconfig_local

    ~/ 中创建一个名为.gitconfig_local 的文件,并在.gitconfig 文件中添加您不希望提交或公开的值。在这种情况下:

    [user] name = First Last email = email@example.com

    正如您可能猜到的,[include] 命令“链接”到存储库之外的本地辅助配置文件,因此是私有的。 .gitconfig 中的其余设置(例如别名、颜色和编辑器设置等)仍将公开。

    【讨论】:

    • 不知道您可以从 git 配置文件中包含配置文件。不错的解决方案
    【解决方案2】:

    所有设置都可以基于每个存储库进行设置:只需从您的 git config 命令中删除 --global 即可:

    # from inside your repo :
    git config user.name "Your Name"
    git config user.email you@example.com
    

    然后,这些配置设置将存储在 .git/config 文件中(在 repo 文件夹中),并且优先于全局配置选项。

    这适用于任何 git 配置选项(别名、颜色、...)

    注意:您必须为您制作的任何新克隆或您要使用此身份的任何其他 repo 重复配置

    【讨论】:

    • …或者可以添加--local 100% 明确。
    【解决方案3】:

    另一种可能性是在您的大部分配置中使用$XDG_CONFIG_HOME/git/config(通常是~/.config/git/config)并将其包含在您的dotfiles 存储库中。然后,您可以将.gitconfig 添加到.gitignore 并将其用于user.nameuser.email 和其他您不想提交的值。

    请参阅git-config documentation 了解它读取文件的顺序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-01
      • 1970-01-01
      • 2011-02-08
      • 2011-12-29
      • 1970-01-01
      • 2015-10-15
      相关资源
      最近更新 更多