basyura's blog

あしたになったらほんきだす。

リポジトリごとに使用するユーザ名とメールアドレスを変える

git の説明を見るとだいたい

git config --global user.name globalname
git config --global user.email globalname@mail.com

となっていて、ユーザ名とメールアドレスを一回設定すれば特に気にしなくて良いよという感じになってる。これってそういうものだと思ってて、会社で使ってるリポジトリと私用で使ってるリポジトリでそれぞれコミットする場合は git config --global で変更してたけど、そんなことしなくていいのね。単純にそれぞれのリポジトリで --global を付ずに

git config user.name username
git config user.email username@mail.com

とすればいいだけだった。

a リポジトリを global なユーザ名で編集する

$ mkdir a
$ cd a
$ git init
$ touch README
$ git add .
$ git commit -m "first commit"
$ git log
commit b1cda1c53bd4c67e60ad1d9cbb44d840c2e3c7f0
Author: globalname <globalname@mail.com>
Date:   Wed Feb 4 20:50:01 2009 +0900
    first commit

b リポジトリで別のユーザ名で編集する

$ mkdir b
$ cd b
$ git init
$ git config user.name userb
$ git config user.email userb@mail.com
$ touch README
$ git add .
$ git commit -m "first commit"
$ git log
commit b1cda1c53bd4c67e60ad1d9cbb44d840c2e3c7f0
Author: userb <userb@mail.com>
Date:   Wed Feb 4 20:50:01 2009 +0900
    first commit

その後 c リポジトリを編集する

$ mkdir c
$ cd c
$ git init
$ touch README
$ git add .
$ git commit -m "first commit"
$ git log
commit b1cda1c53bd4c67e60ad1d9cbb44d840c2e3c7f0
Author: globalname <globalname@mail.com>
Date:   Wed Feb 4 20:50:01 2009 +0900
    first commit

設定しなければ global なユーザ名が使われる。