Awesome
gtr Plugin for ZSH
gtr = git tag release
Allows fast tagging of a release in git using the tag name release-YYYY-MM-DD-HH-MM and headline "Release YYYY-MM-DD HH:MM". Git allows you to edit the headline and add a description using your default editor before the tag will be signed and immediatily pushed to the primary remote repository.
Repository clones
The original repository will be stored on GitHub. You can use the original reopsitory if you want to use GitHub. Also issues and pull requests will be collected there for convenience.
This repository will be cloned to my own server. You can use the clone instead of this repository if you want to avoid use GitHub.
Installation
Prerequisites
git
gpg
zsh (without plugin support)
- Clone project
- Add following line to your
.zshrc
:
SOURCE "path/to/repo/gtr.plugin.zsh"
oh-my-zsh
- Clone project into
~/.oh-my-zsh/custom/plugins/gtr
- Add
gtr
to your plugin list
plugins=(… gtr …)
Antigen
- Add following line to your
.zshrc
:
antigen bundle Zocker1999NET/zsh-gtr # GitHub if default repository unchanged
antigen bundle https://git.banananet.work/zsh-plugins/gtr # Own Server
or
- Add the repository to your plugin list
antigen bundles <<EOBUNDLES
…
Zocker1999NET/zsh-gtr # GitHub if default repository unchanged
https://git.banananet.work/zsh-plugins/gtr # Own Server
…
EOBUNDLES
Antibody
- Add following line to your
.zshrc
:
antibody bundle Zocker1999NET/zsh-gtr # GitHub if default repository unchanged
antibody bundle https://git.banananet.work/zsh-plugins/gtr # Own Server
or
- Add the repository to your plugin list
antibody bundles <<EOBUNDLES
…
Zocker1999NET/zsh-gtr # GitHub if default repository unchanged
https://git.banananet.work/zsh-plugins/gtr # Own Server
…
EOBUNDLES
Usage
gtr
Practical usage
I use signed tags with the prefix release-
as convenient update solution for applications and ressources on my server.
Every night my servers look for new tags in given remote repositories.
If a newer release tag is provided,
the signature of the release tag will be checked against my GPG key,
and only if the signature is considered valid,
the server checkouts the new release tag and may runs hooks to auto update applications and servers.
License
This plugin is licensed under WTFPL. Do the fuck you want to with this plugin, but please contribute to this plugin if you have made any improvements which could be useful for others.
Contribute
If you find any issue, report it or fix it yourself and create a pull request.