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.
Download and install with:
sh
cargo install git_extra
You can configure the commands in your .gitconfig
configuration by running git config --global --edit
and adding:
toml
[alias]
brw = !git_extra browse
qst = !git_extra quick-start
This will allow you to type git brw
to browse to the repository web page, etc..
The quick-start
command does two things:
You can specify the URL, 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:
toml
[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-start
from any repo that you haven't carefully examined first.
You can list all your saved repos with git_extra quick-start --list
.
fork
command that will fork and add origin
and upstream
remote from the command lineset-config
command that updates local config based on a cloud based config