| Crates.io | git_extra |
| lib.rs | git_extra |
| version | 3.1.0 |
| created_at | 2022-09-28 21:14:02.307355+00 |
| updated_at | 2025-05-06 18:24:08.154066+00 |
| description | An extra useful set of Git related commands. |
| homepage | |
| repository | https://github.com/jlyonsmith/git_extra_rs |
| max_upload_size | |
| id | 676062 |
| size | 35,933 |
An extra useful set of Git related commands. Requires that you have Git installed. Run git-extra to see the full list.
| Command | Description |
|---|---|
browse |
Browse to the site hosting the origin for the current repo. Uses git remotes -vv to determine the correct site to open. Currently supports Git, GitLab, BitBucket or a self hosted Gitea site. |
quick-start |
Quickly start a new project by git clone and then running a customize script on the cloned repo (see below) |
The current release is only tested on macOS. In v2 the name of the executable has been changed to
git-extrafromgit_extraso that thegitcommand sees it as a newextracommand.
Download and install with:
cargo install git_extra
Because the tool is name git-extra if it's in your path it will show up as a new git command, e.g. you can type git extra --help.
You can configure additioal shortcuts in your .gitconfig configuration by running git config --global --edit and adding:
[alias]
brw = !git-extra browse
qst = !git-extra quick-start
This will allow you to type git brw or git qst as a shortcut.
The quick-start command does just two things:
You can specify the URL, e.g. https, ssh: or file:, new directory and customization script on the command line OR, more usefully, use a shortcut name from a local repos.tomol file. To do this, create a ~/.config/git_extra/repos.toml file, then add all your favorite repo's URL's and descriptions in it. The file format is as follows:
[rust-cli]
description = "My favorite Rust CLI quickstart repo"
origin = "git@github.com:jlyonsmith/rust-cli-quickstart.git"
customizer = "customize.ts"
The TOML table name is the short name for the entry, i.e. rust-cli in this case. The other fields are:
| Name | Default | Description |
|---|---|---|
description |
Empty | A description for the entry |
origin |
Required | The origin URL of the repo |
customizer |
customize |
The customization script to run in the root of the cloned project |
The customization script can be written in any scripting language. The file just needs to be marked as executable, e.g. with chmod u+x. You can also include a #! at the start of the script.
BE CAREFUL! There are no checks done on the script before running it, so don't
quick-startfrom any repo that you haven't carefully examined first.
You can list all your saved repos with git_extra quick-start --list.
pull-request command that creates a pull request from origin to upstreamfork command that will fork an upstream and add an origin from the command lineset-config command that updates local config based on a cloud based config