仕組み
git-artifactは、アーティファクトを専用のorphanブランチに保存するGitサブコマンドです。
01
artifactsブランチを作る
artifactsブランチは、開発の生成物を保存するための独立したorphanブランチです。永続的にソースコードといっしょに管理するには適さない、一時的な作業成果物を想定しています。それらを明確に分離されたartifactsブランチで管理します。
02
普通のディレクトリとファイル
アーティファクトの実体は、.artifacts/配下のディレクトリとそこに含まれるファイルです。保存用ブランチをチェックアウトせず、作業ブランチにいたまま作成・保存・読み出しができます。
03
手元をクリーンに保つ
保存したあとは作業ツリーからアーティファクトを消し、必要なものだけを手元に残せます。履歴はartifactsブランチに置きつつ、ソース側の作業領域を散らかさずに進められます。
04
必要なときに探し出す
保存済みのアーティファクトは検索でき、過去の生成物が必要になったときに再び読み出せます。必要なものだけを、必要なときに手元へ戻せます。
ワークフローの例
ローカルファイルシステムとコマンド
artifactsブランチ
- $git artifact init孤立したartifactsブランチを作成tree
- artifacts/
- README.md
- AIエージェントが設計・実装・レビューtree
- app/
- design.md
- review.md
AIエージェントがファイルを生成 - $git artifact new auth-redesignアーティファクトを作成tree
- app/
- .artifacts/
- auth-redesign/
- (empty)
tree- artifacts/
- README.md
- auth-redesign/
- .artifact.json
- design.mdとreview.mdを.artifacts/auth-redesign/へ移動tree
- app/
- .artifacts/
- auth-redesign/
- design.md
- review.md
- $git artifact save -d "#42 Auth redesign"アーティファクト内のファイルを保存tree
- artifacts/
- auth-redesign/
- .artifact.json
- design.md
- review.md
- ローカルのアーティファクトを削除tree
- app/
- .artifacts/
- (empty)
- 後日、過去の作業を調査したいとき
- $git artifact list過去のアーティファクトを検索
- $git artifact load auth-redesign.artifacts/へ復元tree
- app/
- .artifacts/
- auth-redesign/
- design.md
- review.md
tree- artifacts/
- auth-redesign/
- .artifact.json
- design.md
- review.md
インストール
Homebrewならgit-artifactをまとめて入れられます。手動インストールは、Pythonの実行ファイルを1つPATHに置くだけです。
brew install kohkimakimoto/tap/git-artifactインストールの詳細 →