MicroGit
保存と同時に裏で自動コミットを行う、タイムトラベル・超高頻度履歴管理ツールです。
現段階のスコープ
現時点では次のみをサポートします。
- 個人開発: ローカルで保存のたびにマイクロ履歴を記録し、タイムトラベルする
- メインリポジトリのコミットを介した共有:
.microgit_shadow を大元リポジトリの通常コミットに含め、そのコミットを共有・復元することでマイクロ履歴も一緒に受け渡す
チーム間でのマイクロ履歴の直接同期(専用リモートブランチへの自動 push / pull など)は 将来的な実装予定 であり、現段階では行いません。
.microgit_shadow は大元リポジトリのコミットに含める前提です。対象ブランチ上の通常コミットを復元すると、その時点のマイクロ履歴も一緒に戻り、マイクロブランチ単位でさかのぼれます。
主な機能
- オン / オフ切り替え: ステータスバーまたはコマンドパレットから有効化・無効化できます。有効化したブランチが「対象ブランチ」になります。
- 対象ブランチ限定のシャドウ: 対象ブランチ以外へ切り替えると、作業ツリー上の
.microgit_shadow / .microgit_logs を拡張機能ストレージへ退避し、他ブランチのコミットへ混入しないようにします。対象ブランチへ戻るとマイクロ履歴ごと復元します。
- 全自動シャドウコミット: 有効かつ対象ブランチ上でファイルを保存すると、
.microgit_shadow に自動でコミットが残ります。
- 直感的なタイムトラベル: 過去の保存ポイントへ、ボタン一つでワークスペースのファイルを復元できます。
- タイムライングラフ: 専用の Webview ビューアで、分岐したマイクロ履歴を視覚的に確認できます。
- コントロールパネル: Activity Bar の専用ビューから GUI 操作できます。保存やジャンプに合わせてリアルタイム更新されます。
使い方
- コントロールパネル: 左の Activity Bar の MicroGit アイコン(時計)を開くか、コマンドパレットで
MicroGit: Open Control Panel を実行します。オンオフ、ジャンプ、グラフ表示を GUI から操作できます。
- 有効化: パネルまたはステータスバーの
MicroGit: OFF から有効化します。このときチェックアウト中のブランチが対象ブランチになります。
- 履歴の自動記録: 対象ブランチ上でファイルを保存(
Ctrl + S / Cmd + S)すると履歴が蓄積され、パネルとグラフがリアルタイム更新されます。
- 共有したいとき:
.microgit_shadow を大元リポジトリへ通常コミットし、そのコミットを共有します。受け取った側はそのコミットをチェックアウトすると、同じマイクロ履歴を参照できます。
- グラフの表示: パネルの「グラフを開く」、または
MicroGit: Show Graph を実行します。開いたまま保存やジャンプに追従します。
- 他ブランチへ移動: 対象外ブランチではシャドウ領域が作業ツリーから退避されます。対象ブランチへ戻ると、退避していたマイクロ履歴がそのまま復元されます。大元の過去コミットを detached HEAD で参照している間は退避せず、そのコミットに含まれるシャドウを優先します。
免責事項
本拡張機能は研究・開発段階のプロトタイプです。重要なプロジェクトで利用する際は、事前に通常の Git でコミットを行ってからご使用ください。
| |