diff options
Diffstat (limited to 'nix/per-host/git/git-shell-commands/publish')
| -rwxr-xr-x | nix/per-host/git/git-shell-commands/publish | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/nix/per-host/git/git-shell-commands/publish b/nix/per-host/git/git-shell-commands/publish new file mode 100755 index 0000000..54aff26 --- /dev/null +++ b/nix/per-host/git/git-shell-commands/publish @@ -0,0 +1,19 @@ +#!/usr/bin/env bash +# git-shell-commands(5) subcommand: make a repo public (browsable in cgit +# and cloneable over HTTP) by creating the git-daemon-export-ok marker. +# Run: ssh git@git.kumardamani.net publish <name> + +name="${1:-}" +case "$name" in + ""|*[!a-zA-Z0-9._-]*|*..*) + echo "usage: publish <name>" >&2 + exit 1 + ;; +esac +repo="/srv/git/$name.git" +if [ ! -d "$repo" ]; then + echo "error: no such repo '$name'" >&2 + exit 1 +fi +touch "$repo/git-daemon-export-ok" +echo "published: https://git.kumardamani.net/$name" |
