[git] gitconfigで会社用アカウントと個人用アカウントを楽に使い分けする - Qiita<
参考にした記事では、以下のファイル名ですが、自分なりに変更をしました。
変更前
- ~/.gitconfig
- ~/.gitconfig-work
- ~/.gitconfig-other
- ~/.gitconfig
- ~/.gitconfig_work
- ~/.gitconfig_personal
この辺は、自由に決めて良いと思います。
そして、オリジナルの ~/.gitconfig から [user] の箇所を削除して、~/.gitconfig_work, ~/.gitconfig_personal それぞれに [user] を追記します。
includeIf の gitdir に含まれていないディレクトリ内で git レポジトリを作成してコミットすると、ローカルのユーザ名とマシン名(例: user1@iMac.lan)などでコミットされます。
デフォルトで name, email を設定しておきたい場合は、~/.gitconfig に [user] の設定を残して置くのが良いと思います。
ここまで設定をして、いざ、コミット!!
としてみると、思ったようなユーザ名でコミットされません。。。
原因は、includeIf の gitdir のディレクトリ名の最後に / を付けるのを忘れていたからでした。。。
こんなミスするの、自分だけなんだろうなぁ・・・。
(´・ω・`)
そして、更に設定をしてみましたが、どうやら指定したユーザ名になる時とならない時があります。
その原因は、階層の高いディレクトリ (~/dev/) を階層の低いディレクトリ (~/dev/project1/) の後に指定しているからでした。
includeIf の gitdir は、最後にマッチした条件のファイルが適用されるので、階層の高いディレクトリから順々に指定する必要があります。
最終的なファイル内容は、以下の通りです。
~/.gitconfig
# config for personal [includeIf "gitdir:~/dev/"] path = ~/.dotfiles/git/.gitconfig_personal # overwrite specific projects # config for work [includeIf "gitdir:~/dev/project1/"] path = ~/.dotfiles/git/.gitconfig_work~/.gitconfig_personal
[user] name = me email = me@personal.example.com~/.gitconfig_work
[user] name = me email = me@work.example.com将来の自分のために書き残しておきます。。。
次回は、こんなポカをしませんように。。。😅
0 件のコメント:
コメントを投稿