Files
GitM/README.md
panw a7cfa381e7 docs: update .gitignore and README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-31 16:45:41 +08:00

61 lines
1.1 KiB
Markdown

# GitM - Gitea Repository Sync Tool
Cross-platform tool to synchronize all repositories from multiple Gitea servers to local storage.
## Features
- Single binary deployment (frontend embedded)
- Web UI for management (Vue 3 + Element Plus)
- SQLite database
- JWT authentication
- Scheduled and manual sync
- Cross-platform (Windows, Linux)
## Build
```bash
# Build binary with embedded frontend
go build -o bin/gitm .
# Or with CGO for SQLite support
CGO_ENABLED=1 go build -o bin/gitm .
```
## Run
```bash
# First-time initialization (set admin password)
./bin/gitm --init
# Start server (default :9000)
./bin/gitm
# Custom address
./bin/gitm --addr :9090
# Custom data directory
./bin/gitm --data /path/to/data
```
## Usage
1. Initialize: `./bin/gitm --init` -- sets admin password
2. Start: `./bin/gitm` -- starts web server
3. Open browser to `http://localhost:9000`
4. Login and add Gitea servers
5. Discover repos and sync
## Development
```bash
# Frontend dev server
cd web && npm install && npm run dev
# Backend
go run main.go
# Run tests
go test ./internal/gitea/... -v
CGO_ENABLED=1 go test ./internal/database/... -v
```