aboutsummaryrefslogtreecommitdiff
path: root/nix/per-host/git/git-shell-commands/hide
diff options
context:
space:
mode:
authorKumar Damani <me@kumardamani.net>2026-08-02 01:43:25 +0000
committerKumar Damani <me@kumardamani.net>2026-08-02 01:43:25 +0000
commit43930cb8c22bc28ed64362845c5f4ebf54faabf2 (patch)
tree7351357bd38139b0267f1a4cdeff4b5143f5e89a /nix/per-host/git/git-shell-commands/hide
parent3e139a0e702513f6e1145158b2695b43c8251b92 (diff)
added git with cgit
Diffstat (limited to 'nix/per-host/git/git-shell-commands/hide')
-rwxr-xr-xnix/per-host/git/git-shell-commands/hide19
1 files changed, 19 insertions, 0 deletions
diff --git a/nix/per-host/git/git-shell-commands/hide b/nix/per-host/git/git-shell-commands/hide
new file mode 100755
index 0000000..4208e08
--- /dev/null
+++ b/nix/per-host/git/git-shell-commands/hide
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+# git-shell-commands(5) subcommand: make a repo private again by removing
+# the git-daemon-export-ok marker. SSH access is unaffected.
+# Run: ssh git@git.kumardamani.net hide <name>
+
+name="${1:-}"
+case "$name" in
+ ""|*[!a-zA-Z0-9._-]*|*..*)
+ echo "usage: hide <name>" >&2
+ exit 1
+ ;;
+esac
+repo="/srv/git/$name.git"
+if [ ! -d "$repo" ]; then
+ echo "error: no such repo '$name'" >&2
+ exit 1
+fi
+rm -f "$repo/git-daemon-export-ok"
+echo "hidden (private): '$name'"