git config --globalはどこに書き込まれますか?


1025

を使用git config --globalして設定する場合、どのファイルに書き込まれますか?

例:

git config --global core.editor "blah"

次の場所では見つかりません。

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config

ENVを設定していませんか?

My Gitバージョン:1.6.5.1.1367.gcd48 – Windows 7の場合


1
msysgitなどを使用していますか?
codeguru、2010年

359
git config --global --editどのような設定を行っていても、正確な場所がわかるはずです。エディターで表示されるファイルを確認してください。
MatrixFrog 2011

55
git config --global --listgitが期待する場所の場所を提供するため、存在しない場合にも役立ちました。
AJP 2013年

4
@AJP:これはまさに私の問題ですが、保存/読み取りを行う場所を変更するにはどうすればよいですか?
Stijn de Witt 2014

1
gitの設定--list --show-起源はあなたの場所を教えてくれます
eddyP23

回答:


1240

2016年更新:git 2.8(2016年3月)では、次のように使用できます。

git config --list --show-origin

Git 2.26(2020年第1四半期)ではオプション追加--show-scopeできます

git config --list --show-origin --show-scope

どの構成がどこに設定されているかがわかります。
Git構成の設定はどこから来るのですか?」を参照してください

スティーブンVascellaroは指摘するコメントで

非標準のインストール場所で動作します。(Git Portableなど

(最新ののように、PortableGit-2.14.2-64-bit.7z.exeどこでも圧縮解除できます)


元の回答(2010)

ドキュメントから:

- グローバル

書き込みオプションの場合:~/.gitconfigリポジトリではなくグローバルファイルに書き込みます.git/config

Git for Windowsを使用しているため、これが対応する場所が明確でない場合があります。しかし、(/でC:\Program Files\Git)etc / profileを見ると、次のように表示されます。

HOME="$HOMEDRIVE$HOMEPATH"

意味:

C:\Users\MyLogin

(Windows 7の場合)

つまり、ファイルはC:\Users\MyLogin\.gitconfigWindows 7のGit用です。


8
私は本当に馬鹿げていたので、編集コマンドに「--global」フラグを追加しませんでした。「git config --global --edit」はすべての私の設定変更を含むファイルを示し、「git config --edit」は私が開いて考え続けたファイルでした。どうもありがとう。
Ian Vaughan

6
ありがとう。%USERPROFILE%にあると言われていた他の場所を見たことがあります。私のコンピューターでは、HOMEDRIVEとHOMEPATHがネットワークドライブに再マップされています。私のローカルドライブでの検索では何も起こりませんでした。これはとても役に立ちました。
Mike M. Lin

2
本当に役に立ちました。同じ問題が発生していました。マップされたホームドライブのあるドメインを使用している場合、そこにgit構成が作成されます。これは良い機能のリクエストになります-%HOMEDRIVE%または%USERPROFILE%を使用してください
プラスミド87

2
ユーザーが1人だけの場合に、なぜこれがグローバルと呼ばれるのですか?(UNIXの場合)/etc/gitconfig「グローバル」では~/.gitconfigなく、「ローカル」のみであると思います.....そして.git/config「ハイパーローカル」だと思います-----基本的に、私はこの混乱の「グローバル」という用語を見つけます、そして私は命名に正当な理由があるかどうか疑問に思っていましたか?
Peter Ajtai 2012

7
@PeterAjtaiはすべてのリポジトリ用であるため、「グローバル」です。「ローカル」(1つのリポジトリのみ)または「システム」(すべてのリポジトリ、すべてのユーザー)とは
対照的に

123

私は.gitconfigWindowsマシンでグローバルを探していましたが、gitを使用してこの巧妙なトリックを見つけました。

a:git config --global -eを実行すると、運が良ければ、グローバル.gitconfigファイルが読み込まれたテキストエディターが表示されます。そこからフォルダを検索するだけです(または名前を付けて保存してみてください...)。:-)


ちょうど私が探していたもの!-eコマンド!一度にプロパティを編集するのは私の趣旨ではないからです。
Patareco、2016年

1
このコマンドを実行すると、C:\Users\<user_name>\.gitconfig欠落している場合もが作成されます。
pmbanka

ウィンドウなしのモードで実行していて、どこにも場所が見つからない
Triynko

73

* nixesではにあり~/.gitconfigます。あなたの家に対応するファイルはありますか?

Windowsではgit bashと入力できます

notepad ~/.gitconfig

6
これはWindowsでも同じです。
Felix Kling 2010年

2
簡単にアクセスしたい場合は、エイリアスを記述しますalias gitconfig='open -a Sublime\ Text.app ~/.gitconfig'。任意のテキストエディターを使用します。
2014年

43

msysgitのパスは次のとおりです。

Windows XPの -C:\Documents and Settings\<user_name>\.gitconfig

Windows Vista以降 C:\Users\<user_name>\.gitconfig


17
おそらくこれを%USERPROFILE%と記述する方が良いでしょう。そうすれば、答えは過去、現在、未来のすべてのWindowsバージョンで機能します。
jarmod 2013年

3
他の回答と同じように、実際には%HOMEDRIVE %% HOMEPATH%であると思いますが、多くの場合%USERPROFILE%と同じですが、一部のIT構成では、マップされたドライブをポイントしています。
2018年

34

Windows MsysGitでは、HOME環境変数を定義していない限り、HOMEDRIVE環境変数とHOMEPATH環境変数を使用して、グローバルロケーションが導出されます。詳細は「プロファイル」スクリプトで説明されています。

私の企業環境では、HOMEDRIVEはH:であり、ネットワークURL \\ share \ $にマップされます。次に、ロット全体が「マイドキュメント」にマップされます。これは、他の人が期待する場所ではありません。URLの再マッピングの原因となる問題がさらに発生した可能性があります。とにかく、HOMEDRIVEまたはHOMEPATH変数を調整することすらできません。

私の場合、個人のHOME環境変数を定義し、それをD:\ git \ GitHOMEにポイントし、それらのGITファイル(拡張子なし)をすべて安全に保管するためにGitHOMEディレクトリにコピーしました。

Windowsの環境変数は、[マイコンピュータのプロパティ]ダイアログの[詳細]タブで設定できます。


1
HOMEDRIVEHOMEPATH変数に投稿しようとしている回答をスクロールしていたのは、Bowerを使用しているときにわからなくなったからです。<system>:\User\<username>\.gitconfig, while the Git tool itself saves to %HOMEPATH%\。gitconfig . I had to go one step further and copy the updated config file from my H: `(私たちのネットワークは同じドライブ文字を使用しています)からローカルユーザーフォルダーに読み取ったWindows上の多くのユーティリティのようですが、Bowerから呼び出されたときのみ、Gitはルールを正しく使用しました。

1
@ZaLiTHkA、私の企業ネットワークでは、ユーザーのホーム(H :)ドライブはC:\ User \の場所にも再マッピングされているため、気付かなかった。間違いを犯しているFOSSユーティリティがどれであるかを特定できれば、それらのツールの報告/修正に取り掛かるために役立つ情報になります。それらが社内のツールである場合は、あなた自身で行ってください;-)
Philip Oakley

単純なセッター行よりも複雑でない限り、etc \ profileスクリプトで定義されたHOMEは表示されません。まだ説明どおりに動作しているように見えますが、現在HOMEがどこに設置されているのかは不明です。
2018年

@ojchase --glob configがWindowsに特に関連して書かれている場所の答えの私の部分。コアLinux gitは、XDGが指示する場所などに書き込みます(つまり、Linuxは他の場所に書き込み、他の規則があることを認識しています。重要なのは、Windowsに「ドライブ」があるのにルートディレクトリがあることです;-)
フィリップオークリー

@PhilipOakley私は実際にはWindowsについても言及していました。すみません、分かりませんでした。あなたの答えと他のものを組み合わせて、私はある種のHOME = $HOMEDRIVE$HOMEPATH(または同様の)行が予想されていましたがC:\Program Files\Git\etc\profile、その行は存在していないようですが、おそらく以前は使用されていましたか?$ HOMEの設定を正確に理解できませんでした。環境変数で設定しない限り、$ HOMEが設定されないからです。
2018年

12

TortoiseGitをWindows PCで使用している場合は、以下を使用できます。

Settings / Git / Config / Edit global .gitconfig

グローバル.gitignoreファイルを開きます。

ただし、ドメインでWindows(7)PCを使用している場合、プロファイルdirはネットワーク共有(ドライブとしてマウント)である可能性があります。この場合、TortoiseGit(少なくとも:1.6.5.0)は間違ったディレクトリ(c:...)を示しています。詳細については、TortoiseGitの終了した問題922を参照してください。または、%HOMEDRIVE %% HOMEPATH%を使用して、.gitignoreファイルを含むディレクトリを開きます。


10

私はWindows 8.1でmsysgitと一緒にSmartGit を使用していgitconfigますが、ファイルには3つの異なる場所があることに気づきました。

%USERPROFILE%\.gitconfig
C:\Program Files (x86)\Git\etc\gitconfig
C:\Program Files (x86)\SmartGitHg\git\etc\gitconfig

ただし、使用されるのはからのもの%USERPROFILE%\.gitconfigです。


6

(* nixプラットフォームの場合)注意することは有用かもしれません:/usr/share/git-core/git autocompletionスクリプトや次の(デフォルト)フックなど、いくつかのタイプのグローバルgit設定/情報がに保存されます:

  • applypatch-msg
  • 更新後
  • 事前コミット
  • prepare-commit-msg
  • commit-msg
  • 事前適用パッチ
  • リベース前
  • 更新

これらのそれぞれに、それぞれのファイル名で記述された時点で実行する独自のコマンドセットを含めることができます。


2
OPの質問には役立ちません。
orbfish 2014

5

私も私のグローバルに問題がありました.gitconfig これは誰かがこの奇妙なことを持っている場合のためです

gitは言った:

致命的:構成ファイルの読み取り中に不明なエラーが発生しました

今、私はそれを修正しました。問題は.gitconfigこのフォルダーの2番目でした。

c:\ Users \ myUser.config \ git \ config

どこから来たのかはわかりませんが...今ではすべてが再び魅力のように機能します。


5

グローバルな.gitconfigファイルはいつ作成されますか?

まず、gitはインストール時にグローバル構成ファイル(.gitconfig)を自動的に作成しません。ファイルは、初めて書き込まれるまで作成されません。システム変数を設定したことがない場合、ファイルシステム上にはありません。それが問題の原因かもしれないと思います。

Gitに作成を依頼する1つの方法は、編集をリクエストすることです。これを行うと、ファイルが強制的に作成されます。

git config --global --edit

このコマンドを発行するときにユーザーのホームフォルダーを監視すると、.gitconfigファイルが魔法のように表示されます。

git設定はどこに保存されますか?

以下は、3つのGitスコープ、つまりsystemglobal、およびlocalに関連付けられている構成ファイルの名前と場所の概要です。

  • システムGitの設定:ファイルの名前gitconfigに位置-gitインストール-、場所に/明<32>の/ etc
  • グローバルGit構成:ユーザーのホームフォルダーにある.gitconfigという名前のファイル(C:\ Users \ git user)
  • ローカルGit構成:ローカルリポジトリの.gitフォルダーにあるconfigという名前のファイル

もちろん、見ることは信じられないことなので、ここに各ファイルと各場所を示す画像があります。そのトピックについて書いた記事から画像を引き出しました。

Windows Git構成ファイルの場所(TheServerSide.com)

Git構成ファイルの場所


1
ポータブル設定と呼ばれる4番目の場所があります。ここでは、4つの場所について言及しています。 Git for Windowsは4つのレベルの構成をサポートしています。最下位レベルは「ポータブル」と呼ばれるマシン固有の構成設定であり、「%ProgramData%\ Git \ config」を実行します
Badr Elmers

1
吹き飛ばされた心!新しい情報で記事を更新します。乾杯!
キャメロンマッケンジー

4

私はWindows 7を実行していて、GitHub(1年か2年前)の指示に従ってセットアップとしてgitを使用しています。私が考えていたかなり一般的なユースケース。上記の答えのどれも私を助けませんでした、そして多くの欲求不満の後、私は次のディレクトリに私の「本当の」gitconfigファイルを見つけました;

C:\ Users \ Bill \ AppData \ Local \ GitHub \ PortableGit_054f2e797ebafd44a30203088cd 3d58663c627ef \ etc

明らかに、PortableGit_が一意のGUIDまたは同様のものである場合は、ユーザー名とおそらくサフィックスを置き換えます。


1
これは、GitHub for Windowsを使用する場合にのみ当てはまります。
ヘビ

3

この引用を投稿することが重要だと思います。

Git for Windowsは4つのレベルの構成をサポートしています。最下位レベルは「ポータブル」と呼ばれるマシン固有の構成設定であり、「%ProgramData%\ Git \ config」を使用します。1つの優先度レベルは、「\ mingw64 \ etc \ gitconfig」にある「システム」と呼ばれるインストール固有の構成設定を使用します。これらの構成ファイルはどちらも、通常、変更するには管理者特権が必要です。

「%UserProfile%.gitconfig」にある「グローバル」構成と呼ばれる使用固有の値から始めて、「ユーザーが編集可能な」構成ファイルを見つけます。最も優先度の高い構成設定は「ローカル」構成にあり、通常は「.git \ config」にあります。

リンクされたブログの推奨事項は、「システム」または「インストール」固有の構成設定を変更することですが、ユーザーはGitの他のインストールが上記の設定を吸収しないことを期待する必要があります。マシン全体の設定が必要な場合は、「ポータブル」構成ファイルを使用します。それ以外の場合は、「グローバル」または「ローカル」構成ファイルを選択します。

うまくいけば、人々はこの情報が役に立つと思います。

ソース


3

@MatrixFrogが彼らのコメントで指摘したように、目標が設定を編集することである場合は、次のように実行することをお勧めします。

git config --global --edit

このコマンドは--global、選択したエディターで構成ファイル(この場合は1つ)を開き、ファイルが閉じるのを待ちます(と同様git rebase -i)。


あなたは、グローバルがどこを把握するためにこれを使用することができます.gitconfig位置しています-長い間、あなたのエディタは、ファイルが置かれているもののディレクトリがわかりますようとして、あなたはまた、他のスイッチ(使用することができます。--system--local他の検索および編集するために、など).gitconfigの場所を。PS -eは同じ--edit
LightCC

1

Msysgitをアンインストールし、Cygwin + Gitをインストールします。次に、グローバル '.gitconfig'はC:\ cygwin(64)\ home \ [userName] \。gitconfigになります。

これで、他のプログラムで使用される可能性のある環境変数について心配する必要がなくなりました。たとえば、私の環境変数が、仕事用のWindowsドメイン環境のマップされたドライブを指し示していました。「ホーム」マップされたドライブにグローバル.gitconfigを配置したくありません。また、そのWindows環境変数に依存する可能性のある他のアプリケーションに何が起きるかもわかりません。運用部門では、理由により、マップされたドライブに設定された環境変数が必要になる場合があります。

また、この方法を使用してグローバル '.gitconfig'への特定のパスを指定する場合、Mysysgitが 'プロファイル'構成設定を上書きすることを心配する必要はありません。

一般的に、自分自身を保存し、ウィンドウでcygwin bashシェルを使用して幸せになります


1

同様の問題がありました。問題は、.gitconfigファイルが置かれていたことでした

C:\Users\MyLogin\.gitconfig\

(Windows 7の場合)

つまり、ファイルは(Gitがファイルを探していた場所ではC:\Users\MyLogin\.gitconfig\.gitconfigなく)ではなく、にありましたC:\Users\MyLogin\.gitconfig


1

.gitconfig ファイルの場所

macOSテストOK

グローバル

# global config
$ cd ~/.gitconfig

# view global config
$ git config --global -l

地元

# local config
$ cd .git/config

# view local config
$ git config -l

多分あなたのためのボーナス:VimまたはVSCodegit configを編集するため


# open config with Vim

# global config
$ vim ~/.gitconfig

# local config
$ vim .git/config


# open config with VSCode

# global config
$ code ~/.gitconfig

# local config
$ code .git/config


0

私は自分のGitを次の場所にインストールしました: C:\Users\_myuserfolder_\AppData\Local\Programs\Git

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.