git-send

Crates.iogit-send
lib.rsgit-send
version0.1.6
created_at2025-11-26 07:54:38.319804+00
updated_at2025-12-24 16:27:36.343653+00
descriptionCommit and push changes with a single command
homepagehttps://git.sr.ht/~anhkhoakz/git-send#git-send
repositoryhttps://git.sr.ht/~anhkhoakz/git-send
max_upload_size
id1951098
size89,680
Nguyễn Huỳnh Anh Khoa (anhkhoakz)

documentation

https://docs.rs/crate/git-send/latest

README

git-send

Crates.io Version Crates.io Downloads Crates.io Size

Stage, commit, pull (with rebase), and push your repository with one command.

Installation

cargo install git-send

Or build from source:

git clone https://git.sr.ht/~anhkhoakz/git-send
cd git-send
cargo build --release
sudo install -m 755 target/release/git-send /usr/local/bin/git-send

Usage

git-send [OPTIONS]

Options

  • -m, --message <MSG> - Commit message (default: "update: automated commit")
  • --msg <MSG> - Alias for --message
  • --dry-run - Show what would be executed without running it
  • --no-pull - Skip git pull --rebase
  • --no-push - Skip git push
  • --auto-stash - Stash changes before pulling and restore after

Examples

# Basic usage
git-send

# With custom message
git-send --message "fix: update dependencies"

# Preview what would happen
git-send --dry-run

# Skip pull
git-send --no-pull

# Auto-stash before pull
git-send --auto-stash

How it works

  1. Stages all changes with git add -A
  2. Commits with the provided message (or default) if there are staged changes
  3. Optionally stashes changes if --auto-stash is enabled
  4. Pulls from origin/<branch> with rebase (unless --no-pull)
  5. Pushes to origin/<branch> (unless --no-push)
  6. Restores stash if it was created

License

MIT OR Apache-2.0

Commit count: 0

cargo fmt