A convenience script to for rapidly switching context between different git repositories.
/usr/local/bin is in your
PATH, you can install it by running:
curl --create-dirs -o "/usr/local/bin/src" https://raw.githubusercontent.com/samsalisbury/home/master/bin/src && chmod +x "/usr/local/bin/src"
github.com/samsalisbury/home if needed and print the directory where it was cloned. (If it’s already cloned just print the directory.)
$ src github.com/samsalisbury/home
Clone if needed and cd into the directory:
$ cd "$(src github.com/samsalisbury/home)"
Clone if needed and open a new tmux pane in the clone directory. (Only works if running inside tmux of course.):
$ src -t github.com/samsalisbury/home
Because there is a default host set to
github.com, you can also just use
samsalisbury/home in place of
github.com/samsalisbury/home in the examples above.
Because there is a default username, mine currently set to
hashicorp you can also omit the username for cloning repos from that user, e.g.:
src -t vault is equivalent to
src -t hashicorp/vault is equivalent to
src -t github.com/hashicorp/vault.
See the source code at https://github.com/samsalisbury/home/blob/master/bin/src