Skip to content

feat: Reset・Reflog機能を追加 (v1.2)#20

Merged
HMasataka merged 9 commits intomainfrom
feat/v1.2-reset-reflog
Feb 27, 2026
Merged

feat: Reset・Reflog機能を追加 (v1.2)#20
HMasataka merged 9 commits intomainfrom
feat/v1.2-reset-reflog

Conversation

@HMasataka
Copy link
Owner

概要

Reset(Soft/Mixed/Hard + ファイル単位)とReflog(HEAD移動履歴表示 + 復元操作)をフルスタックで実装。5層アーキテクチャに従い、バックエンド(git2-rs)からフロントエンド(React)まで一貫した構成。

変更内容

バックエンド(Rust)

  • ResetMode/ResetResult/ReflogEntry 型定義
  • GitBackend トレイトに reset/reset_file/get_reflog メソッド追加
  • git2-rsによる実装(repo.reset(), repo.reset_default(), repo.reflog()
  • Tauriコマンド登録
  • 統合テスト7件追加(Soft/Mixed/Hard Reset、ファイル単位Reset、Reflog取得)

フロントエンド(React/TypeScript)

  • Resetページ: コミット選択 + Soft/Mixed/Hardモード選択の2カラムUI、Hard Reset確認ダイアログ付き
  • Reflogページ: HEAD移動履歴テーブル、Checkout/Reset to hereアクションボタン、アクション種別の色分け
  • IPCサービス・Zustandストア追加
  • サイドバーAdvancedセクションにナビゲーション追加
  • ストアテスト4件追加

テスト plan

  • Resetページで Soft/Mixed/Hard の各モードでリセット実行
  • Hard Reset時に確認ダイアログが表示される
  • Reflogページで HEAD 移動履歴が表示される
  • Reflog の Checkout / Reset to here ボタンが動作する
  • task check パス

🤖 Generated with Claude Code

HMasataka and others added 9 commits February 27, 2026 20:33
ResetMode/ResetResult/ReflogEntry型、GitBackendトレイトに
reset/reset_file/get_reflogメソッドを追加し、git2-rsで実装。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
reset, reset_file, get_reflogコマンドを登録。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Soft/Mixed/Hard Reset、ファイル単位Reset、Reflog取得の7テストを追加。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
reset.ts/reflog.tsサービス、gitStoreにresetToCommit/resetFileアクション、
uiStoreにreset/reflogページID追加。ストアテスト4件追加。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Soft/Mixed/Hard Resetの3モード選択、コミットリスト、変更プレビュー、
Hard Reset確認ダイアログを含む2カラムUIレイアウト。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
HEAD移動履歴のテーブル表示、Checkout/Reset to hereアクションボタン、
アクション種別ごとの色分け表示。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
AdvancedセクションにReset/Reflogナビゲーション項目を追加し、
App.tsxにルーティング、main.tsxにCSSインポートを追加。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@HMasataka HMasataka merged commit 45de378 into main Feb 27, 2026
5 checks passed
@HMasataka HMasataka deleted the feat/v1.2-reset-reflog branch February 27, 2026 11:53
@HMasataka HMasataka restored the feat/v1.2-reset-reflog branch February 27, 2026 12:53
@HMasataka HMasataka deleted the feat/v1.2-reset-reflog branch February 27, 2026 12:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant