diff options
| author | Danilo M. <danix@danix.xyz> | 2026-06-24 09:57:33 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-06-24 09:57:33 +0200 |
| commit | 345968271dec38b33a32649d8cfb767c2806330d (patch) | |
| tree | df90e30c02189a38628bc10829fecfebec0b53d4 /README.md | |
| parent | eeaba25642392532901cd4c95c23054e9a7ba2b3 (diff) | |
| download | gitctl-345968271dec38b33a32649d8cfb767c2806330d.tar.gz gitctl-345968271dec38b33a32649d8cfb767c2806330d.zip | |
feat: global -y/--yes flag to skip additive confirmations
repo create's y/N push confirmation can now be skipped with -y. The flag
is global (top-level parser), so it goes before the subcommand:
gitctl -y repo create ... . The diff is still printed and an
auto-confirmed note shown. -y does NOT bypass SSH key auth (the phase-1
push still needs the password / smartcard touch), so creation is never
fully unattended.
Hard wall: -y is never honored by a future destructive delete; the flag
help, a client comment, and TODO item 1 all record this. Bash completion
offers -y at the top level and transparently skips a leading -y when
resolving the subcommand. Self-test pins the parse round-trip.
Client-only change; the server helper is unchanged, no redeploy needed.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -177,15 +177,22 @@ gitctl sync End-to-end agent flow: ``` -gitctl repo create publisher --section SlackBuilds --desc "..." +gitctl -y repo create publisher --section SlackBuilds --desc "..." gitctl repo add-remote publisher --remote-name origin git push -u origin master ``` +`-y` skips the y/N so an agent can drive create; the push itself still prompts +for the SSH key, so it is not fully unattended. ## Notes - `repo create` shows the gitolite.conf diff and asks before committing. On decline it reverts the conf edit, leaving a clean tree. +- `-y` / `--yes` (a global flag, so it goes BEFORE the subcommand: + `gitctl -y repo create ...`) skips that y/N confirmation. The diff is still + printed. It does NOT make creation unattended: the phase-1 push still needs + the SSH key password or smartcard touch, which `-y` cannot supply. It is + never honored by a destructive delete. - `repo list` lists every bare repo on disk, not just the cgit-exposed ones, so private repos show too. A `VIS` column marks each `PUB` (present in cgitrc) or `PRIV`; on a terminal public rows are green and private dim. The description |
