| Crates.io | syncgit |
| lib.rs | syncgit |
| version | 0.1.8 |
| created_at | 2025-05-03 22:18:02.855121+00 |
| updated_at | 2025-09-04 09:02:39.091305+00 |
| description | Una herramienta CLI para sincronizar repositorios Git |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1659184 |
| size | 35,446 |
A lightweight Rust-based CLI to streamline everyday Git flows: detect the repo root, show a clear status, stage only what you need, commit, and push — with a clean, user-friendly terminal UI.
.git).Repository root and Subpath (relative path from the repo root).git status -sb).--porcelain limited to the current subpath).GITHUB_TOKEN) to push to private repos via HTTPS.All path-sensitive git operations use git -C <repo_root> for robust behavior regardless of where you run syncgit.
export GITHUB_TOKEN=your_token_here
Install Rust if you don’t have it yet:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Then install the CLI globally:
cargo install syncgit
Run the tool from anywhere inside a Git repository:
syncgit
Repository root and Subpath.When you’re in a parent folder with multiple projects, the subpath status is grouped by top-level folder. This keeps large changes readable and helps you focus on a particular folder’s changes when committing from the parent.
If no internet connection is detected, changes are committed locally but not pushed. A message will inform you to push manually once online.
To push to private GitHub repositories via HTTPS, the tool will use the GITHUB_TOKEN environment variable (if available) to authenticate securely by rewriting the remote URL temporarily.
cargo install syncgit --force
cargo install cargo-update
cargo install-update -a
term_size: For responsive terminal layout.std::process, std::io, std::env, and std::net.git -C <root> usage.Repository root + Subpath.Pull requests and feedback are welcome! Please open an issue first to discuss any major changes.
Made with ❤️ in Rust.