#author("2022-01-25T09:08:08+09:00","default:ryuichi","ryuichi")
* includeIfでgitconfigを読み分ける [#k30510ce]


** [#ve10aa3f]

** フォルダ、ファイル構成 [#j5b5c61c]
 C:\Users\<USER NAME\.gitconfig  # グローバルのgitconfig
 C:\tmp\my_gitconfig             # 読み分けるgitconfig
 C:\src\my_repo                  # 対象のリポジトリ
 C:\src\my_repo2                 # 同上
 C:\src\my_repo3                 # 同上

** グローバルの.gitconfig [#q3339c39]

 [user]
    name = Taro
    email = taro@example.com
 [includeIf "gitdir/i:C:/src/"]
    path = C:/tmp/my_gitconfig


** 解説 [#b5ac05e9]
- 上の設定で、'''C:/src'''以下にあるリポジトリでは'''C:/tmp/my_gitconfig'''を読むようになる
- 注意点として、
- '''gitdir'''は'''gitdir/i'''として必ずケースインセンシティブにする
- '''gitdir/i'''の後にスペースを付けない
- '''C:/src/'''のように末尾に/スラッシュを付ける
- リポジトリフォルダの中でgitコマンドを実行しないと上の設定は有効にならない。すなわち、'''cd C:/src/my_repo'''した後に'''git config --list --show-origin'''などで設定を確認する
- my_gitconfigのパスはグローバルのgitconfigファイルの相対パスとしても書ける。例えば'''path = my_gitconfig'''なら、'''C:\Users\<USER NAME\my_gitconfig'''に相当する

** 参考 [#c0f79d14]
https://git-scm.com/docs/git-config

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS