気付いたら会社のGithubアカウントには草が生えまくっているのに、私用のアカウントには草木もないようなことがあると思います。
わたしがそうでした。
globalには個人のアカウント、localには会社のアカウントというように
Gitアカウントを使い分けることができたので作業内容をメモとして残します。
会社用アカウントの設定ファイルの作成
// ルートディレクトリに作成
~ $ touch .gitconfig_company_name
~ $ vi .gitconfig_company_name
以下の内容をファイルに書き込みます。
[user]
name = company_username
email = company@xxx.com
.gitconfigファイルの設定
共通の設定ファイルを開く。
~ $ git config --global -e
.gitconfig
は大体以下のようなことが記載されているかと思います。
私の場合、SourceTreeを使っていたので、[difftool "sourcetree"]
や [mergetool "sourcetree"]
などがありました。
ポイントとしては [includeIf "gitdir:~/iOS/SomeCompany/"]を[user]の下に配置することです。
特定のディレクトリ以下の時には [user] を上書きするイメージです。
[user]
name = private_name
email = private@gmail.com
# 追加 ここから -----
[includeIf "gitdir:~/iOS/SomeCompany/"] # SomeCompany以下のディレクトリが先ほど設定したアカウントに適用されます。
path = ~/.gitconfig_company_name # .gitconfig_company_nameがある場所。
# 追加 ここまで -----
[commit]
template = /Users/{username}/.stCommitMsg
[core]
excludesfile = /Users/{username}/.gitignore_global
gitdir:
は会社のリポジトリを配下に入れるディレクトリです。
設定されているか確認
$ git config user.name
グローバルなのでprivate_name
が出力される。
$ git config user.name
company_username
が出力されたら成功。
完成
root/
├ iOS/
│ └ SomeCompany/ # SomeCompany以下は会社のアカウントになりました🥰
│ └ SomeProject1/
│ └ SomeProject2/
└ hoge/