Skip to content

Commit b73aca3

Browse files
committed
docs: update README with new features
- Add gitkit status command documentation - Document gitkit without args as wizard alias - Add config scope options (--global/--local) - Document idempotency detection - Update wizard description to mention state awareness
1 parent e2a12ff commit b73aca3

1 file changed

Lines changed: 72 additions & 8 deletions

File tree

README.md

Lines changed: 72 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@ Set up a git repo the way you actually work — one guided flow for hooks, `.git
3232
## Features
3333

3434
- **🪄 Guided repo setup** — Configure hooks, `.gitignore`, `.gitattributes`, and git config in one interactive flow.
35+
- **📊 Status overview** — See what's currently configured with `gitkit status`.
3536
- **🔁 Clone and bootstrap** — Clone a repo and drop straight into the setup wizard.
3637
- **🧰 Hook management** — Install, list, show, or remove built-in hooks, or wire up your own command.
3738
- **🧩 Ignore and attribute presets** — Browse built-in and gitignore.io templates, then apply line-ending or binary presets.
38-
- **⚙️ Curated git config** — Apply practical presets like auto-upstream, autocorrect, histogram diffs, zdiff3, rerere, and delta pager setup.
39+
- **⚙️ Curated git config** — Apply practical presets with `--global` or `--local` scope, with idempotency detection.
3940
- **📦 Single binary** — No Node.js, no Python, no extra runtime.
4041

4142
---
@@ -84,18 +85,24 @@ Remove-Item "$env:LOCALAPPDATA\gitkit\gitkit.exe" -Force
8485

8586
## Quick Start
8687

87-
**Clone and configure a repo in one command:**
88+
**Run the wizard (no arguments needed):**
8889

8990
```bash
90-
gitkit clone https://github.com/user/repo
91+
gitkit
9192
```
9293

93-
Or configure an existing repo:
94+
Or explicitly:
9495

9596
```bash
9697
gitkit init
9798
```
9899

100+
**Clone and configure a repo in one command:**
101+
102+
```bash
103+
gitkit clone https://github.com/user/repo
104+
```
105+
99106
Or use commands directly:
100107

101108
```bash
@@ -107,21 +114,58 @@ gitkit config apply defaults
107114

108115
---
109116

117+
## `gitkit status`
118+
119+
Show what's currently configured in your repo and globally.
120+
121+
```bash
122+
gitkit status
123+
```
124+
125+
**Output example:**
126+
127+
```
128+
Hooks:
129+
✓ conventional-commits (commit-msg)
130+
✓ custom: pre-push → "cargo test"
131+
132+
.gitignore:
133+
✓ 14 patterns
134+
135+
.gitattributes:
136+
✓ line-endings (eol=lf)
137+
138+
Git config (local):
139+
(none)
140+
141+
Git config (global):
142+
✓ push.autoSetupRemote = true
143+
✓ help.autocorrect = prompt
144+
✓ diff.algorithm = histogram
145+
```
146+
147+
---
148+
110149
## `gitkit init`
111150

112-
Interactive wizard that guides you through configuring a repo step by step.
151+
Interactive wizard that guides you through configuring a repo step by step. Shows what's already configured and allows removal.
113152

114-
- Hooks — built-ins pre-selected, or add a custom command
153+
- Hooks — shows installed hooks, pre-selects them, allows removal
115154
- `.gitignore` — filterable search across all gitignore.io templates + built-ins
116155
- `.gitattributes` — line endings and binary file presets
117-
- Git config — 6 individual options, recommended ones pre-selected
156+
- Git config — shows current values, allows removal
157+
- Custom hooks — interactive picker for hook type selection
118158

119-
Automatically initializes a git repository if one doesn't exist:
159+
Run without arguments or explicitly:
120160

121161
```bash
162+
gitkit
163+
# or
122164
gitkit init
123165
```
124166

167+
Automatically initializes a git repository if one doesn't exist.
168+
125169
---
126170

127171
## `gitkit clone`
@@ -194,6 +238,26 @@ The wizard runs automatically after cloning, allowing you to configure hooks, `.
194238
| `gitkit config apply defaults` | `push.autoSetupRemote`, `help.autocorrect`, `diff.algorithm` |
195239
| `gitkit config apply advanced` | `merge.conflictstyle zdiff3`, `rerere.enabled` |
196240
| `gitkit config apply delta` | `core.pager delta` (requires `cargo`) |
241+
| `gitkit config show` | Show current git config values |
242+
243+
**Scope options:**
244+
245+
- `--global` — Apply to global git config (all repos)
246+
- `--local` — Apply to local repo config only
247+
- Default: `--local` if in a repo, `--global` otherwise
248+
249+
**Idempotency:**
250+
251+
Configs already set with the same value show `(already set)` and are skipped.
252+
253+
```bash
254+
$ gitkit config apply defaults --global
255+
✓ push.autoSetupRemote = true (already set)
256+
✓ help.autocorrect = prompt (already set)
257+
✓ diff.algorithm = histogram (already set)
258+
259+
All configs already applied.
260+
```
197261

198262
---
199263

0 commit comments

Comments
 (0)