diff options
Diffstat (limited to 'CLAUDE.md')
| -rw-r--r-- | CLAUDE.md | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -10,6 +10,8 @@ Two single-file scripts, no shared module: - `gitctl`: client, runs on the laptop. Dumb caller: loads TOML config, edits the local gitolite-admin clone and pushes, shells out to the helper over SSH. + Installed locally at `/usr/local/bin/gitctl` (the user copies it there by + hand; not done by this repo). - `gitctl-helper`: server helper, runs as the git user over a `command=`-restricted SSH key. Holds all parsing-heavy logic. Dispatches on `SSH_ORIGINAL_COMMAND`. @@ -57,6 +59,11 @@ separate `AuthorizedKeysFile` (`~git/.ssh/gitctl_keys`) wired via a - **`description` file is owned `git:gitolite3`** (system user git, group gitolite3, no gitolite3 user). `set-desc` writes in place (truncate-write) to preserve owner, with `os.chown` back as insurance. +- **`repo create --private` runs Phase 1 only.** It makes the gitolite stanza + and bare repo but never calls the helper, so the repo is never written to + cgitrc and stays off the public cgit index (shows `PRIV` in `repo list`). + `--section` is required unless `--private` (enforced in `cmd_create`, not + argparse, since the rule is conditional). - Every operation is idempotent and safe to re-run. - No em dashes in user-facing text. - Work on `master`, no feature branches. |
