feat: add commit panel and file status indicators to repo workspace
- Add CommitPanel component for viewing changed files and committing - Show file status indicators (M/A/D/?) in file tree - Integrate git status with workspace for real-time updates - Add CSS styles for commit panel and status badges Part of git-control change implementation.
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Git Control Features
|
||||
|
||||
## Problem
|
||||
|
||||
The repository workspace currently provides read-only access to git repositories. Users can browse files, view history, and see branches, but cannot perform git operations like creating branches, committing changes, pushing/pulling, or merging.
|
||||
|
||||
## Solution
|
||||
|
||||
Add git control capabilities to the repository workspace, allowing users to:
|
||||
1. Create and delete branches
|
||||
2. Switch between branches (checkout)
|
||||
3. Commit changes (for quick edits)
|
||||
4. Push changes to remote
|
||||
5. Pull/fetch updates from remote
|
||||
6. Merge branches
|
||||
7. View working directory status
|
||||
|
||||
## Benefits
|
||||
|
||||
- **Complete workflow**: Users can make small changes without leaving the browser
|
||||
- **Quick iterations**: Fix typos, update configs, make small adjustments
|
||||
- **Branch management**: Create feature branches, merge when done
|
||||
- **Remote sync**: Keep repositories up to date
|
||||
- **No external tools needed**: Everything in the browser
|
||||
|
||||
## Scope
|
||||
|
||||
### What stays:
|
||||
- Existing file browser and viewer
|
||||
- Git history visualization
|
||||
- Repository management (create/delete)
|
||||
|
||||
### What's new:
|
||||
- Branch CRUD operations
|
||||
- Working directory status (modified files)
|
||||
- Commit operations
|
||||
- Push/pull/fetch
|
||||
- Merge capabilities
|
||||
- Git action toolbar in workspace
|
||||
|
||||
### What changes:
|
||||
- Workspace toolbar gets git action buttons
|
||||
- File viewer gets "modified" indicators
|
||||
- Branch selector gets management options
|
||||
Reference in New Issue
Block a user