54 lines
1.3 KiB
Markdown
54 lines
1.3 KiB
Markdown
# Usage
|
|
|
|
## Environment Requirements
|
|
|
|
- Linux or Unix-like terminal environment with curses support.
|
|
- Python 3 interpreter available as `python3`.
|
|
- Git installed and available in `PATH`.
|
|
|
|
## Installation
|
|
|
|
1. Make the script executable:
|
|
```bash
|
|
chmod +x git-tui
|
|
```
|
|
2. Install as a memorable command name (example: `gtui`):
|
|
```bash
|
|
sudo install -m 755 git-tui /usr/local/bin/gtui
|
|
```
|
|
|
|
## Running
|
|
|
|
- Enter any Git repository and run:
|
|
```bash
|
|
gtui
|
|
```
|
|
|
|
## Key Commands in UI
|
|
|
|
- Main menu:
|
|
- `Up/Down` or `j/k` to move.
|
|
- `Enter` to execute selected action.
|
|
- `q` or `Esc` to quit.
|
|
- File selector:
|
|
- `Space` to toggle file selection.
|
|
- `a` to toggle all files.
|
|
- `Enter` to confirm.
|
|
- `q` or `Esc` to cancel.
|
|
|
|
## Git Operations Covered
|
|
|
|
- Stage all changes (`git add -A`).
|
|
- Stage selected files (`git add -- <paths...>`).
|
|
- Unstage selected files (`git restore --staged -- <paths...>`).
|
|
- Commit staged changes (`git commit -m "<message>"`).
|
|
- Push current branch (`git push`).
|
|
- Pull with rebase (`git pull --rebase`).
|
|
- Fetch all remotes (`git fetch --all --prune`).
|
|
- Show full status (`git status`).
|
|
|
|
## Cross References
|
|
|
|
- Architecture and contracts: [`doc/architecture.md`](architecture.md)
|
|
- Change history: [`CHANGELOG.md`](../CHANGELOG.md)
|