2017-12-29 8 views
1

参照https://git-scm.com/docs/git-configによると、gitの設定は、system、global、projectという3つのスコープで保存されています。.gitconfigを分離して保全するエレガントな方法?

グローバルとプロジェクトの間でより特定のスコープを区切る他の方法があるのだろうか。

たとえば、公式の仕事に関連するプロジェクトがたくさんあります。その時、user.name = "NAME IN CORP"が必要です。他にはuser.name = "NAME IN PUBLIC"が必要です。

私が言いました(仕事、公共)2つのスコープに属するプロジェクトは、プロジェクトスコープを1つずつ指定するには多すぎます。それを解決する有効な方法はありますか?

+0

プロジェクトを指定するには、」あまりにも多くのとはどういう意味ですかスコープを1つずつ」?確かに、現存するすべてのプロジェクトを構成するためのスクリプトを作成し、新しいプロジェクトを作成するときにGIT_TEMPLATE_DIRを設定することができます。 –

+0

@WilliamPursell私は、.gitconfigを1つずつ書く必要があるプロジェクトが多すぎるということです。確かに私はスクリプトを書くことで対処することができますが、私はgitを使うより自然な方法があると思います。 – XeIte

答えて

3

git 2.13以降、新しく導入されたConditional includesを使用してこれを解決することができます。

例:

グローバル設定〜/ .gitconfig

[user] 
    name = John Doe 
    email = [email protected] 

[includeIf "gitdir:~/work/"] 
    path = ~/work/.gitconfig 

作業の特定の設定〜/仕事/ .gitconfig

[user] 
    email = [email protected] 
+0

私が見つけようとしている正しい方法と思われます。ありがとう。 – XeIte

関連する問題