判断マトリクス · 共有ビルド環境

2026年小チーム共有リモートMac判断マトリクス:Git credential helper による分アカウント・多リポジトリ並行fetchとトークンローテ・最小権限検収チェックリスト

2026年4月20日 Meshmac 専門チーム 読了目安 約5分

共有リモートMacHTTPS+PATSSH が混在すると取り違えとキーチェーン競合が出やすいです。対照表・設定・検証・検収に整理しました。前提:権限隔離FAQ、証明書:Jump Host とSSH証明書ローテ

よくある事故

同一ホスト表記のまま切り替えるとfetchが別権限で走ります。helper一本だとトークン混線します。SSHかHTTPSかを揃え、パス単位Hostエイリアスで分けます。作業ツリーはワークツリー並行マトリクスと揃えます。

対照表(SSH証明書・HTTPS・キーチェーン・並行)

小チームではSSH=Hostエイリアス+鍵/証明書HTTPS=useHttpPath+includeIfが説明しやすいです。

項目 SSH HTTPS キーチェーン 並行
分アカウント Host 別に鍵固定 includeIf+パス単位 ユーザ/チェーン分離 fetch並列に上限
ローテ CA期限・ssh-add -l PAT期限・スコープ 更新後にerase メンテ枠で並行抑制
典型失敗 同一Hostで鍵上書き トークン混線 GUI/CIで競合 初回cloneは直列
最小権限 Deploy key等をrepo単位 fine-grained優先 読取ジョブは狭い権限 書込はレーン分離

設定と検証

1) HTTPS — グローバル ~/.gitconfig

[credential]
    helper = osxkeychain
    useHttpPath = true

組織別は ~/.gitconfig-corpAincludeIf で読み分けます。

[includeIf "gitdir:~/build/corp-a/"]
    path = ~/.gitconfig-corp-a

2) SSH — アカウント固定:

Host github.com-corp-a
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_ed25519_corp_a
    IdentitiesOnly yes

URLはgit@github.com-corp-a:…に統一。検証:GIT_TERMINAL_PROMPT=0 git ls-remote/HTTPSはerase後、SSHはssh -T

最小権限の検収

  • スコープ:読み取りジョブに不要な書き込み権が付いていない。
  • 期限:PAT/証明書の更新日がカレンダーにあり、期限前に再発行できる。
  • 経路:同一repoでHTTPSとSSHが混在せず、remote -vが意図どおり。
  • 並行:キーチェーン飽和時はfetch並列かSSH寄せの方針がある。
  • 失効:鍵・トークンの所有者と失効手順が一覧化されている。

FAQ

Q. 複数組織のPATを混ぜたくない。
A. useHttpPathincludeIf。必要ならユーザ分離。

Q. 並行fetchで詰まる。
A. 並列数を下げるかSSHへ寄せる。

Q. PAT更新直後に403。
A. erase後にls-remote。スコープも確認。

まとめと購入

HTTPSはパス単位、SSHはHostエイリアスで切ると説明しやすいです。ローテ時はcredential残りとfetch飽和を確認。

複数repo・アカウントの協働向けは MeshMac チーム/協働プランログイン不要で:購入ホームヘルプブログ一覧

共有Mac · 認証と協働

分アカウントと轮换は、設定より「名前空間」が先

HTTPS・SSH・キーチェーンの境界を揃えたうえで、協働向けプランでノードと運用幅を拡張できます。

共有Mac credential ローテ 協働
協働プラン確認・ログイン不要