git-remote-codecommitはpipとHomebrewどっちで入れるべきか

  • AWS
  • CodeCommit
  • Git
  • Linux
  • macOS

この記事は、構成と文章の整理にAIを使っています。
あくまで読みやすくするための補助で、内容そのものをAIにすべて任せて書いているわけではありませんが、ところどころ相談しながら整えています。

git-remote-codecommitとは

CodeCommitにHTTPS接続するための認証ヘルパー。Gitコマンド自体を拡張する仕組みなので、Git用のIAM認証情報(ユーザー名・パスワード)やSSH鍵を別途作らなくていい。ルートアカウント、フェデレーテッドアクセス、STSの一時的セキュリティ認証情報での接続をサポートしてるのはこれだけで、AWS CLIのプロファイルやSTSトークンをそのまま使い回せる。

Linuxでのインストール

前提はPythonとpip、Git。pipはバージョン9.0.3以上が必要。

ターミナル
pip --version

古い場合はget-pip.pyで更新できる。

ターミナル
curl -O https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py --user

本体のインストールはpip一発。

ターミナル
pip install git-remote-codecommit

Gitはバージョン1.7.9以降が必要で、2.28以降なら初期コミットのブランチ名指定にも対応してる。ディストリのパッケージマネージャで入れて問題ない。

macOS(Homebrew)でのインストール

Homebrewが入っていればこっちのほうが早い、はずだった。

ターミナル
brew install git-remote-codecommit

いきなりこれで詰まった。

error: Your Xcode (13.2.1) is outdated.
Please update to Xcode 13.4.1.

Xcode 13.4.1を落として、切り替える。

ターミナル
sudo xcode-select --switch /Applications/Xcode.13.4.1.app

Command Line Toolsも入れ直す。

ターミナル
xcode-select --install

それでもPython 3.10がソースビルドで止まる場合があって、そのときは明示的にbuild-from-sourceで通した。

ターミナル
brew install --build-from-source python@3.10

ここまでやってからbrew install git-remote-codecommitを再実行すれば通る。pip経由なら最初からこのXcode周りのビルド問題は踏まないので、Macでもとりあえず動かしたいだけならpipでいい。

使い方

インストールが終わればgitコマンドの中でそのまま使える。リージョンを指定してクローンする場合。

ターミナル
git clone codecommit::ap-northeast-1://repository-name

プロファイルを指定したい場合はこう。

ターミナル
git clone codecommit::ap-northeast-1://profile-name@repository-name

push/pullも通常のgitと同じ。

ターミナル
git push origin main
git pull origin main

フェデレーテッドアクセスや一時的セキュリティ認証情報を使う場合は、git-remote-codecommitをサポートしているのはAWS CLI v2だけなので、CLIのバージョンは要確認。

注意点

  • git: 'remote-codecommit' is not a git command というエラーが出たら、大体は実行ファイルへのPATHが通ってないか、git-remote-codecommitのハイフン抜けなどのタイプミス。
  • IAM静的ユーザー名・パスワードやSSH鍵を使う既存の接続方法と混在させると、どっちの認証で繋いでるか分かりづらくなるので、チームで使うなら接続方式は揃えたほうがいい。
  • フェデレーティッドユーザーはGit認証情報やSSH鍵ペアが使えないので、その場合はgit-remote-codecommit一択になる。

pipでもbrewでも中身は同じツールなので、Macで開発してるならbrewで入れて、CIやLinux環境ではpipで入れるくらいの使い分けでいい。


追記(2025/11)

CodeCommitは2024年7月に新規顧客への提供を停止する方針が出てたけど、2025年11月25日に撤回されて完全なGA(一般提供)に戻ってる。既存ユーザーは特に影響なかったけど、これから新規で使う人はこの記事の情報より公式ドキュメントの最新版を確認したほうがいい。