@enjoys/context-engine 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +213 -0
- package/data/commands/air.json +59 -0
- package/data/commands/ansible.json +24 -0
- package/data/commands/apachectl.json +87 -0
- package/data/commands/apt-get.json +81 -0
- package/data/commands/apt.json +91 -0
- package/data/commands/awk.json +26 -0
- package/data/commands/aws-vault.json +140 -0
- package/data/commands/aws.json +229 -0
- package/data/commands/az.json +36 -0
- package/data/commands/bazel.json +103 -0
- package/data/commands/brew.json +140 -0
- package/data/commands/bun.json +230 -0
- package/data/commands/caddy.json +194 -0
- package/data/commands/cargo.json +1048 -0
- package/data/commands/cat.json +18 -0
- package/data/commands/cd.json +48 -0
- package/data/commands/certbot.json +148 -0
- package/data/commands/chmod.json +97 -0
- package/data/commands/choco.json +134 -0
- package/data/commands/chown.json +59 -0
- package/data/commands/clickhouse-client.json +74 -0
- package/data/commands/cloudflare.json +226 -0
- package/data/commands/cmake.json +110 -0
- package/data/commands/cockroach.json +92 -0
- package/data/commands/conda.json +94 -0
- package/data/commands/consul.json +125 -0
- package/data/commands/cp.json +86 -0
- package/data/commands/curl.json +44 -0
- package/data/commands/cypress.json +100 -0
- package/data/commands/deno.json +29 -0
- package/data/commands/django-admin.json +86 -0
- package/data/commands/dnf.json +137 -0
- package/data/commands/docker.json +1100 -0
- package/data/commands/doctl.json +156 -0
- package/data/commands/eslint.json +69 -0
- package/data/commands/find.json +44 -0
- package/data/commands/firebase.json +97 -0
- package/data/commands/flask.json +79 -0
- package/data/commands/flyctl.json +148 -0
- package/data/commands/gcloud.json +227 -0
- package/data/commands/gh.json +39 -0
- package/data/commands/git.json +527 -0
- package/data/commands/glab.json +116 -0
- package/data/commands/go.json +161 -0
- package/data/commands/gofmt.json +51 -0
- package/data/commands/golangci-lint.json +89 -0
- package/data/commands/gradle.json +44 -0
- package/data/commands/grep.json +47 -0
- package/data/commands/gunicorn.json +83 -0
- package/data/commands/helm.json +1104 -0
- package/data/commands/hg.json +92 -0
- package/data/commands/httpd.json +147 -0
- package/data/commands/influx.json +119 -0
- package/data/commands/iptables.json +86 -0
- package/data/commands/java.json +31 -0
- package/data/commands/jest.json +82 -0
- package/data/commands/journalctl.json +88 -0
- package/data/commands/just.json +93 -0
- package/data/commands/k6.json +84 -0
- package/data/commands/kubectl.json +1277 -0
- package/data/commands/linode-cli.json +117 -0
- package/data/commands/locust.json +83 -0
- package/data/commands/ls.json +115 -0
- package/data/commands/make.json +86 -0
- package/data/commands/mocha.json +75 -0
- package/data/commands/mongosh.json +73 -0
- package/data/commands/mv.json +68 -0
- package/data/commands/mvn.json +45 -0
- package/data/commands/mysql.json +81 -0
- package/data/commands/nest.json +69 -0
- package/data/commands/netlify.json +92 -0
- package/data/commands/next.json +71 -0
- package/data/commands/nft.json +105 -0
- package/data/commands/nginx.json +146 -0
- package/data/commands/nmap.json +92 -0
- package/data/commands/node.json +43 -0
- package/data/commands/nomad.json +139 -0
- package/data/commands/npm.json +1265 -0
- package/data/commands/npx.json +58 -0
- package/data/commands/nx.json +82 -0
- package/data/commands/openssl.json +288 -0
- package/data/commands/packer.json +92 -0
- package/data/commands/pacman.json +82 -0
- package/data/commands/pg_dump.json +83 -0
- package/data/commands/pg_restore.json +74 -0
- package/data/commands/pip.json +95 -0
- package/data/commands/pipenv.json +79 -0
- package/data/commands/pipx.json +53 -0
- package/data/commands/playwright.json +97 -0
- package/data/commands/pnpm.json +29 -0
- package/data/commands/poetry.json +96 -0
- package/data/commands/prettier.json +71 -0
- package/data/commands/ps.json +31 -0
- package/data/commands/psql.json +124 -0
- package/data/commands/pulumi.json +130 -0
- package/data/commands/pytest.json +92 -0
- package/data/commands/python.json +30 -0
- package/data/commands/railway.json +91 -0
- package/data/commands/redis-cli.json +148 -0
- package/data/commands/render.json +72 -0
- package/data/commands/rm.json +79 -0
- package/data/commands/rsync.json +36 -0
- package/data/commands/rust.json +35 -0
- package/data/commands/rustup.json +103 -0
- package/data/commands/scp.json +60 -0
- package/data/commands/sed.json +28 -0
- package/data/commands/sqlite3.json +68 -0
- package/data/commands/ssh-keygen.json +112 -0
- package/data/commands/ssh.json +37 -0
- package/data/commands/sudo.json +147 -0
- package/data/commands/supabase.json +108 -0
- package/data/commands/svn.json +75 -0
- package/data/commands/systemctl.json +31 -0
- package/data/commands/tar.json +35 -0
- package/data/commands/tcpdump.json +77 -0
- package/data/commands/terraform.json +824 -0
- package/data/commands/terragrunt.json +83 -0
- package/data/commands/tsc.json +85 -0
- package/data/commands/turbo.json +72 -0
- package/data/commands/ufw.json +76 -0
- package/data/commands/unzip.json +59 -0
- package/data/commands/uvicorn.json +73 -0
- package/data/commands/vault.json +144 -0
- package/data/commands/vercel.json +98 -0
- package/data/commands/vite.json +63 -0
- package/data/commands/vitest.json +88 -0
- package/data/commands/wasm-pack.json +90 -0
- package/data/commands/wget.json +38 -0
- package/data/commands/winget.json +131 -0
- package/data/commands/wireshark.json +81 -0
- package/data/commands/yarn.json +28 -0
- package/data/commands/yum.json +98 -0
- package/data/commands/zip.json +59 -0
- package/index.d.ts +131 -0
- package/index.js +189 -0
- package/index.mjs +21 -0
- package/package.json +64 -0
|
@@ -0,0 +1,527 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "git",
|
|
3
|
+
"description": "Distributed version control system",
|
|
4
|
+
"category": "version-control",
|
|
5
|
+
"platforms": ["linux", "macos", "windows"],
|
|
6
|
+
"shells": ["bash", "zsh", "fish", "powershell"],
|
|
7
|
+
"subcommands": [
|
|
8
|
+
{
|
|
9
|
+
"name": "init",
|
|
10
|
+
"description": "Create an empty Git repository or reinitialize an existing one",
|
|
11
|
+
"args": [{ "name": "<directory>", "type": "directory", "required": false, "description": "Directory to init" }],
|
|
12
|
+
"options": [
|
|
13
|
+
{ "name": "--bare", "description": "Create a bare repository" },
|
|
14
|
+
{ "name": "--initial-branch", "short": "-b", "description": "Name for the initial branch", "type": "string" },
|
|
15
|
+
{ "name": "--template", "description": "Directory from which templates will be used", "type": "directory" },
|
|
16
|
+
{ "name": "--shared", "description": "Specify git repository sharing permissions", "type": "string" }
|
|
17
|
+
],
|
|
18
|
+
"examples": ["git init", "git init --bare my-repo.git", "git init -b main"]
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "clone",
|
|
22
|
+
"description": "Clone a repository into a new directory",
|
|
23
|
+
"args": [
|
|
24
|
+
{ "name": "<repository>", "type": "url", "required": true, "description": "URL of the remote repository" },
|
|
25
|
+
{ "name": "<directory>", "type": "directory", "required": false, "description": "Target directory name" }
|
|
26
|
+
],
|
|
27
|
+
"options": [
|
|
28
|
+
{ "name": "--depth", "description": "Create a shallow clone with truncated history", "type": "number" },
|
|
29
|
+
{ "name": "--branch", "short": "-b", "description": "Checkout a specific branch after clone", "type": "string" },
|
|
30
|
+
{ "name": "--single-branch", "description": "Clone only the history leading to the tip of a single branch" },
|
|
31
|
+
{ "name": "--recurse-submodules", "description": "Initialize submodules in the clone" },
|
|
32
|
+
{ "name": "--shallow-submodules", "description": "Shallow clone submodules" },
|
|
33
|
+
{ "name": "--bare", "description": "Make a bare Git repository" },
|
|
34
|
+
{ "name": "--mirror", "description": "Set up a mirror of the source repository" },
|
|
35
|
+
{ "name": "--no-checkout", "description": "No checkout of HEAD after clone" },
|
|
36
|
+
{ "name": "--sparse", "description": "Initialize sparse-checkout file" },
|
|
37
|
+
{ "name": "--filter", "description": "Partial clone filter spec", "type": "string" }
|
|
38
|
+
],
|
|
39
|
+
"examples": ["git clone https://github.com/user/repo.git", "git clone --depth 1 https://github.com/user/repo.git", "git clone -b develop --single-branch https://github.com/user/repo.git"]
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "add",
|
|
43
|
+
"description": "Add file contents to the staging area",
|
|
44
|
+
"args": [{ "name": "<pathspec>", "type": "path", "required": true, "description": "Files to add" }],
|
|
45
|
+
"options": [
|
|
46
|
+
{ "name": "--all", "short": "-A", "description": "Add all changes (tracked & untracked)" },
|
|
47
|
+
{ "name": "--patch", "short": "-p", "description": "Interactively choose hunks to add" },
|
|
48
|
+
{ "name": "--force", "short": "-f", "description": "Allow adding otherwise-ignored files" },
|
|
49
|
+
{ "name": "--dry-run", "short": "-n", "description": "Show what would be added" },
|
|
50
|
+
{ "name": "--update", "short": "-u", "description": "Only update tracked files" },
|
|
51
|
+
{ "name": "--intent-to-add", "short": "-N", "description": "Record only that path will be added later" }
|
|
52
|
+
],
|
|
53
|
+
"examples": ["git add .", "git add -A", "git add -p", "git add src/", "git add *.ts"]
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "commit",
|
|
57
|
+
"description": "Record changes to the repository",
|
|
58
|
+
"options": [
|
|
59
|
+
{ "name": "--message", "short": "-m", "description": "Use the given message as the commit message", "type": "string" },
|
|
60
|
+
{ "name": "--all", "short": "-a", "description": "Stage all modified and deleted files before committing" },
|
|
61
|
+
{ "name": "--amend", "description": "Amend the previous commit" },
|
|
62
|
+
{ "name": "--no-edit", "description": "Reuse previous commit message (with --amend)" },
|
|
63
|
+
{ "name": "--allow-empty", "description": "Allow a commit with no changes" },
|
|
64
|
+
{ "name": "--signoff", "short": "-s", "description": "Add Signed-off-by trailer" },
|
|
65
|
+
{ "name": "--fixup", "description": "Construct a commit message for rebase --autosquash", "type": "string" },
|
|
66
|
+
{ "name": "--author", "description": "Override the commit author", "type": "string" },
|
|
67
|
+
{ "name": "--date", "description": "Override the author date", "type": "string" },
|
|
68
|
+
{ "name": "--no-verify", "short": "-n", "description": "Bypass pre-commit and commit-msg hooks" },
|
|
69
|
+
{ "name": "--verbose", "short": "-v", "description": "Show unified diff in commit message editor" }
|
|
70
|
+
],
|
|
71
|
+
"examples": ["git commit -m 'feat: add login'", "git commit -am 'quick fix'", "git commit --amend --no-edit", "git commit --fixup HEAD~2"]
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "push",
|
|
75
|
+
"description": "Update remote refs along with associated objects",
|
|
76
|
+
"args": [
|
|
77
|
+
{ "name": "<remote>", "type": "string", "required": false, "description": "Remote name" },
|
|
78
|
+
{ "name": "<branch>", "type": "branch", "required": false, "description": "Branch name" }
|
|
79
|
+
],
|
|
80
|
+
"options": [
|
|
81
|
+
{ "name": "--force", "short": "-f", "description": "Force push (overwrite remote)" },
|
|
82
|
+
{ "name": "--force-with-lease", "description": "Force push only if remote is expected" },
|
|
83
|
+
{ "name": "--set-upstream", "short": "-u", "description": "Set upstream for the branch" },
|
|
84
|
+
{ "name": "--tags", "description": "Push all tags" },
|
|
85
|
+
{ "name": "--delete", "short": "-d", "description": "Delete remote branch" },
|
|
86
|
+
{ "name": "--dry-run", "short": "-n", "description": "Do everything except actually push" },
|
|
87
|
+
{ "name": "--all", "description": "Push all branches" },
|
|
88
|
+
{ "name": "--no-verify", "description": "Bypass pre-push hook" }
|
|
89
|
+
],
|
|
90
|
+
"examples": ["git push", "git push origin main", "git push -u origin feature/new", "git push --force-with-lease", "git push origin --delete old-branch", "git push --tags"]
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "pull",
|
|
94
|
+
"description": "Fetch from and integrate with another repository or branch",
|
|
95
|
+
"args": [
|
|
96
|
+
{ "name": "<remote>", "type": "string", "required": false, "description": "Remote name" },
|
|
97
|
+
{ "name": "<branch>", "type": "branch", "required": false, "description": "Branch name" }
|
|
98
|
+
],
|
|
99
|
+
"options": [
|
|
100
|
+
{ "name": "--rebase", "short": "-r", "description": "Rebase current branch on top of upstream" },
|
|
101
|
+
{ "name": "--no-rebase", "description": "Override rebase config, use merge" },
|
|
102
|
+
{ "name": "--autostash", "description": "Stash before pull, apply after" },
|
|
103
|
+
{ "name": "--ff-only", "description": "Only fast-forward merge" },
|
|
104
|
+
{ "name": "--no-ff", "description": "Create merge commit even for fast-forward" },
|
|
105
|
+
{ "name": "--squash", "description": "Squash incoming commits" }
|
|
106
|
+
],
|
|
107
|
+
"examples": ["git pull", "git pull --rebase", "git pull origin main", "git pull --ff-only", "git pull --autostash"]
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "fetch",
|
|
111
|
+
"description": "Download objects and refs from a remote",
|
|
112
|
+
"args": [{ "name": "<remote>", "type": "string", "required": false, "description": "Remote name" }],
|
|
113
|
+
"options": [
|
|
114
|
+
{ "name": "--all", "description": "Fetch all remotes" },
|
|
115
|
+
{ "name": "--prune", "short": "-p", "description": "Remove obsolete remote-tracking refs" },
|
|
116
|
+
{ "name": "--tags", "short": "-t", "description": "Fetch all tags" },
|
|
117
|
+
{ "name": "--depth", "description": "Deepen shallow clone", "type": "number" },
|
|
118
|
+
{ "name": "--dry-run", "description": "Show what would be done" }
|
|
119
|
+
],
|
|
120
|
+
"examples": ["git fetch", "git fetch --all --prune", "git fetch origin", "git fetch --tags"]
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"name": "branch",
|
|
124
|
+
"description": "List, create, or delete branches",
|
|
125
|
+
"args": [{ "name": "<branch-name>", "type": "string", "required": false, "description": "New branch name" }],
|
|
126
|
+
"options": [
|
|
127
|
+
{ "name": "--list", "short": "-l", "description": "List branches" },
|
|
128
|
+
{ "name": "--all", "short": "-a", "description": "List both remote-tracking and local branches" },
|
|
129
|
+
{ "name": "--remote", "short": "-r", "description": "List remote-tracking branches" },
|
|
130
|
+
{ "name": "--delete", "short": "-d", "description": "Delete a branch" },
|
|
131
|
+
{ "name": "-D", "description": "Force delete a branch" },
|
|
132
|
+
{ "name": "--move", "short": "-m", "description": "Rename a branch" },
|
|
133
|
+
{ "name": "--merged", "description": "Only list branches merged into HEAD" },
|
|
134
|
+
{ "name": "--no-merged", "description": "Only list branches not merged into HEAD" },
|
|
135
|
+
{ "name": "--sort", "description": "Sort branches by key", "type": "string" },
|
|
136
|
+
{ "name": "--show-current", "description": "Print current branch name" },
|
|
137
|
+
{ "name": "--verbose", "short": "-v", "description": "Show sha1 and subject line" }
|
|
138
|
+
],
|
|
139
|
+
"examples": ["git branch", "git branch -a", "git branch feature/new", "git branch -d old-branch", "git branch -D force-delete", "git branch -m old new", "git branch --merged", "git branch --show-current"]
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"name": "checkout",
|
|
143
|
+
"description": "Switch branches or restore working tree files",
|
|
144
|
+
"args": [{ "name": "<branch>", "type": "branch", "required": false, "description": "Branch or commit to switch to" }],
|
|
145
|
+
"options": [
|
|
146
|
+
{ "name": "-b", "description": "Create and switch to new branch", "type": "string" },
|
|
147
|
+
{ "name": "-B", "description": "Create/reset and switch to branch", "type": "string" },
|
|
148
|
+
{ "name": "--track", "short": "-t", "description": "Set up tracking for new branch" },
|
|
149
|
+
{ "name": "--orphan", "description": "Create new orphan branch", "type": "string" },
|
|
150
|
+
{ "name": "--force", "short": "-f", "description": "Force checkout (discard local changes)" },
|
|
151
|
+
{ "name": "--ours", "description": "Check out stage #2 for unmerged paths" },
|
|
152
|
+
{ "name": "--theirs", "description": "Check out stage #3 for unmerged paths" }
|
|
153
|
+
],
|
|
154
|
+
"examples": ["git checkout main", "git checkout -b feature/new", "git checkout -- file.txt", "git checkout HEAD~3 -- src/"]
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"name": "switch",
|
|
158
|
+
"description": "Switch branches (modern alternative to checkout)",
|
|
159
|
+
"args": [{ "name": "<branch>", "type": "branch", "required": true, "description": "Branch to switch to" }],
|
|
160
|
+
"options": [
|
|
161
|
+
{ "name": "--create", "short": "-c", "description": "Create and switch to new branch", "type": "string" },
|
|
162
|
+
{ "name": "--force-create", "short": "-C", "description": "Force create and switch", "type": "string" },
|
|
163
|
+
{ "name": "--detach", "short": "-d", "description": "Switch to a commit in detached HEAD" },
|
|
164
|
+
{ "name": "--discard-changes", "description": "Discard local changes" }
|
|
165
|
+
],
|
|
166
|
+
"examples": ["git switch main", "git switch -c feature/new", "git switch -d v1.0.0", "git switch -"]
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"name": "merge",
|
|
170
|
+
"description": "Join two or more development histories together",
|
|
171
|
+
"args": [{ "name": "<branch>", "type": "branch", "required": true, "description": "Branch to merge" }],
|
|
172
|
+
"options": [
|
|
173
|
+
{ "name": "--no-ff", "description": "Create merge commit even for fast-forward" },
|
|
174
|
+
{ "name": "--ff-only", "description": "Refuse to merge unless fast-forward" },
|
|
175
|
+
{ "name": "--squash", "description": "Squash all commits into a single commit" },
|
|
176
|
+
{ "name": "--abort", "description": "Abort the current merge" },
|
|
177
|
+
{ "name": "--continue", "description": "Continue after resolving conflicts" },
|
|
178
|
+
{ "name": "--strategy", "short": "-s", "description": "Use the given merge strategy", "type": "string" },
|
|
179
|
+
{ "name": "--message", "short": "-m", "description": "Set the commit message", "type": "string" },
|
|
180
|
+
{ "name": "--no-commit", "description": "Perform merge but do not auto-commit" }
|
|
181
|
+
],
|
|
182
|
+
"examples": ["git merge feature/new", "git merge --no-ff develop", "git merge --squash feature/big", "git merge --abort"]
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"name": "rebase",
|
|
186
|
+
"description": "Reapply commits on top of another base tip",
|
|
187
|
+
"args": [{ "name": "<upstream>", "type": "branch", "required": false, "description": "Upstream branch" }],
|
|
188
|
+
"options": [
|
|
189
|
+
{ "name": "--interactive", "short": "-i", "description": "Interactive rebase" },
|
|
190
|
+
{ "name": "--onto", "description": "Rebase onto a specific branch", "type": "string" },
|
|
191
|
+
{ "name": "--abort", "description": "Abort rebase" },
|
|
192
|
+
{ "name": "--continue", "description": "Continue after resolving conflicts" },
|
|
193
|
+
{ "name": "--skip", "description": "Skip the current patch" },
|
|
194
|
+
{ "name": "--autosquash", "description": "Auto-squash fixup commits" },
|
|
195
|
+
{ "name": "--autostash", "description": "Stash before rebase, apply after" }
|
|
196
|
+
],
|
|
197
|
+
"examples": ["git rebase main", "git rebase -i HEAD~5", "git rebase --onto main feature/old feature/new", "git rebase --abort"]
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"name": "cherry-pick",
|
|
201
|
+
"description": "Apply changes from existing commits",
|
|
202
|
+
"args": [{ "name": "<commit>", "type": "string", "required": true, "description": "Commit hash(es)" }],
|
|
203
|
+
"options": [
|
|
204
|
+
{ "name": "--no-commit", "short": "-n", "description": "Apply changes without committing" },
|
|
205
|
+
{ "name": "--edit", "short": "-e", "description": "Edit the commit message" },
|
|
206
|
+
{ "name": "--abort", "description": "Cancel cherry-pick" },
|
|
207
|
+
{ "name": "--continue", "description": "Continue after conflict resolution" }
|
|
208
|
+
],
|
|
209
|
+
"examples": ["git cherry-pick abc1234", "git cherry-pick abc1234..def5678", "git cherry-pick -n abc1234"]
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"name": "stash",
|
|
213
|
+
"description": "Stash changes in a dirty working directory",
|
|
214
|
+
"options": [
|
|
215
|
+
{ "name": "push", "description": "Stash current changes (default)" },
|
|
216
|
+
{ "name": "pop", "description": "Apply top stash and remove it" },
|
|
217
|
+
{ "name": "apply", "description": "Apply stash without removing it" },
|
|
218
|
+
{ "name": "list", "description": "List all stashes" },
|
|
219
|
+
{ "name": "drop", "description": "Remove a single stash" },
|
|
220
|
+
{ "name": "clear", "description": "Remove all stashes" },
|
|
221
|
+
{ "name": "show", "description": "Show stash contents as a diff" },
|
|
222
|
+
{ "name": "--include-untracked", "short": "-u", "description": "Include untracked files" },
|
|
223
|
+
{ "name": "--keep-index", "description": "Keep staged files" },
|
|
224
|
+
{ "name": "--message", "short": "-m", "description": "Stash message", "type": "string" }
|
|
225
|
+
],
|
|
226
|
+
"examples": ["git stash", "git stash push -m 'WIP: feature'", "git stash pop", "git stash list", "git stash apply stash@{1}", "git stash drop stash@{0}"]
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"name": "log",
|
|
230
|
+
"description": "Show commit logs",
|
|
231
|
+
"options": [
|
|
232
|
+
{ "name": "--oneline", "description": "Condensed output" },
|
|
233
|
+
{ "name": "--graph", "description": "Draw ASCII graph of commit history" },
|
|
234
|
+
{ "name": "--all", "description": "Show all branches" },
|
|
235
|
+
{ "name": "--decorate", "description": "Print ref names of commits" },
|
|
236
|
+
{ "name": "--stat", "description": "Show file change statistics" },
|
|
237
|
+
{ "name": "--patch", "short": "-p", "description": "Show full diff" },
|
|
238
|
+
{ "name": "--author", "description": "Filter by author", "type": "string" },
|
|
239
|
+
{ "name": "--since", "description": "Show commits after date", "type": "string" },
|
|
240
|
+
{ "name": "--until", "description": "Show commits before date", "type": "string" },
|
|
241
|
+
{ "name": "--grep", "description": "Filter by commit message", "type": "string" },
|
|
242
|
+
{ "name": "-n", "description": "Limit number of commits", "type": "number" },
|
|
243
|
+
{ "name": "--format", "description": "Pretty-print format", "type": "string" },
|
|
244
|
+
{ "name": "--follow", "description": "Follow file renames" }
|
|
245
|
+
],
|
|
246
|
+
"examples": ["git log --oneline -20", "git log --graph --all --oneline --decorate", "git log --author='name' --since='2024-01-01'", "git log --stat"]
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
"name": "diff",
|
|
250
|
+
"description": "Show changes between commits, commit and working tree, etc.",
|
|
251
|
+
"args": [{ "name": "<commit>", "type": "string", "required": false, "description": "Commit(s) or path(s)" }],
|
|
252
|
+
"options": [
|
|
253
|
+
{ "name": "--staged", "description": "Show diff of staged changes" },
|
|
254
|
+
{ "name": "--cached", "description": "Show diff between index and HEAD" },
|
|
255
|
+
{ "name": "--stat", "description": "Show diffstat" },
|
|
256
|
+
{ "name": "--name-only", "description": "Show only names of changed files" },
|
|
257
|
+
{ "name": "--name-status", "description": "Show names and status of changed files" },
|
|
258
|
+
{ "name": "--word-diff", "description": "Show word diff" },
|
|
259
|
+
{ "name": "--color-words", "description": "Show changed words with colors" }
|
|
260
|
+
],
|
|
261
|
+
"examples": ["git diff", "git diff --staged", "git diff HEAD~3", "git diff main..feature", "git diff --stat"]
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
"name": "status",
|
|
265
|
+
"description": "Show the working tree status",
|
|
266
|
+
"options": [
|
|
267
|
+
{ "name": "--short", "short": "-s", "description": "Short-format output" },
|
|
268
|
+
{ "name": "--branch", "short": "-b", "description": "Show branch info in short-format" },
|
|
269
|
+
{ "name": "--porcelain", "description": "Machine-readable output" },
|
|
270
|
+
{ "name": "--verbose", "short": "-v", "description": "Show staged changes diff" }
|
|
271
|
+
],
|
|
272
|
+
"examples": ["git status", "git status -s", "git status -sb", "git status --porcelain"]
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"name": "reset",
|
|
276
|
+
"description": "Reset current HEAD to the specified state",
|
|
277
|
+
"args": [{ "name": "<commit>", "type": "string", "required": false, "description": "Target commit" }],
|
|
278
|
+
"options": [
|
|
279
|
+
{ "name": "--soft", "description": "Reset HEAD but keep staged changes" },
|
|
280
|
+
{ "name": "--mixed", "description": "Reset HEAD and index (default)" },
|
|
281
|
+
{ "name": "--hard", "description": "Reset HEAD, index, and working tree" },
|
|
282
|
+
{ "name": "--merge", "description": "Reset HEAD and index, keep working tree changes" }
|
|
283
|
+
],
|
|
284
|
+
"examples": ["git reset HEAD~1", "git reset --soft HEAD~1", "git reset --hard HEAD~3", "git reset --hard origin/main"]
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"name": "restore",
|
|
288
|
+
"description": "Restore working tree files",
|
|
289
|
+
"args": [{ "name": "<pathspec>", "type": "path", "required": true, "description": "Files to restore" }],
|
|
290
|
+
"options": [
|
|
291
|
+
{ "name": "--staged", "short": "-S", "description": "Unstage files" },
|
|
292
|
+
{ "name": "--worktree", "short": "-W", "description": "Restore working tree (default)" },
|
|
293
|
+
{ "name": "--source", "short": "-s", "description": "Restore from a specific commit", "type": "string" }
|
|
294
|
+
],
|
|
295
|
+
"examples": ["git restore file.txt", "git restore --staged file.txt", "git restore --source HEAD~2 file.txt"]
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"name": "tag",
|
|
299
|
+
"description": "Create, list, delete or verify tags",
|
|
300
|
+
"args": [{ "name": "<tagname>", "type": "string", "required": false, "description": "Tag name" }],
|
|
301
|
+
"options": [
|
|
302
|
+
{ "name": "--annotate", "short": "-a", "description": "Create annotated tag" },
|
|
303
|
+
{ "name": "--message", "short": "-m", "description": "Tag message", "type": "string" },
|
|
304
|
+
{ "name": "--delete", "short": "-d", "description": "Delete a tag" },
|
|
305
|
+
{ "name": "--list", "short": "-l", "description": "List tags matching pattern" },
|
|
306
|
+
{ "name": "--force", "short": "-f", "description": "Replace existing tag" },
|
|
307
|
+
{ "name": "--sign", "short": "-s", "description": "GPG-sign the tag" }
|
|
308
|
+
],
|
|
309
|
+
"examples": ["git tag v1.0.0", "git tag -a v1.0.0 -m 'Release 1.0'", "git tag -l 'v1.*'", "git tag -d v1.0.0"]
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
"name": "remote",
|
|
313
|
+
"description": "Manage set of tracked repositories",
|
|
314
|
+
"options": [
|
|
315
|
+
{ "name": "add", "description": "Add a new remote" },
|
|
316
|
+
{ "name": "remove", "description": "Remove a remote" },
|
|
317
|
+
{ "name": "rename", "description": "Rename a remote" },
|
|
318
|
+
{ "name": "set-url", "description": "Set remote URL" },
|
|
319
|
+
{ "name": "--verbose", "short": "-v", "description": "Show remote URLs" }
|
|
320
|
+
],
|
|
321
|
+
"examples": ["git remote -v", "git remote add origin https://github.com/user/repo.git", "git remote set-url origin git@github.com:user/repo.git"]
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"name": "clean",
|
|
325
|
+
"description": "Remove untracked files from working tree",
|
|
326
|
+
"options": [
|
|
327
|
+
{ "name": "--force", "short": "-f", "description": "Force clean" },
|
|
328
|
+
{ "name": "-d", "description": "Remove untracked directories too" },
|
|
329
|
+
{ "name": "--dry-run", "short": "-n", "description": "Show what would be removed" },
|
|
330
|
+
{ "name": "-x", "description": "Remove ignored files too" },
|
|
331
|
+
{ "name": "-X", "description": "Remove only ignored files" }
|
|
332
|
+
],
|
|
333
|
+
"examples": ["git clean -fd", "git clean -fdn", "git clean -fdx"]
|
|
334
|
+
},
|
|
335
|
+
{
|
|
336
|
+
"name": "reflog",
|
|
337
|
+
"description": "Manage reflog information",
|
|
338
|
+
"examples": ["git reflog", "git reflog show HEAD"]
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"name": "blame",
|
|
342
|
+
"description": "Show what revision and author last modified each line",
|
|
343
|
+
"args": [{ "name": "<file>", "type": "file", "required": true, "description": "File to blame" }],
|
|
344
|
+
"options": [
|
|
345
|
+
{ "name": "-L", "description": "Annotate only the line range", "type": "string" },
|
|
346
|
+
{ "name": "-w", "description": "Ignore whitespace changes" }
|
|
347
|
+
],
|
|
348
|
+
"examples": ["git blame src/main.go", "git blame -L 10,20 file.txt"]
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
"name": "config",
|
|
352
|
+
"description": "Get and set repository or global options",
|
|
353
|
+
"args": [
|
|
354
|
+
{ "name": "<key>", "type": "string", "required": false, "description": "Configuration key" },
|
|
355
|
+
{ "name": "<value>", "type": "string", "required": false, "description": "Configuration value" }
|
|
356
|
+
],
|
|
357
|
+
"options": [
|
|
358
|
+
{ "name": "--global", "description": "Use global config file" },
|
|
359
|
+
{ "name": "--local", "description": "Use repository config file" },
|
|
360
|
+
{ "name": "--system", "description": "Use system config file" },
|
|
361
|
+
{ "name": "--list", "short": "-l", "description": "List all variables" },
|
|
362
|
+
{ "name": "--unset", "description": "Remove a variable" },
|
|
363
|
+
{ "name": "--edit", "short": "-e", "description": "Open editor" }
|
|
364
|
+
],
|
|
365
|
+
"examples": ["git config --global user.name 'Your Name'", "git config --global user.email 'you@example.com'", "git config --list"]
|
|
366
|
+
},
|
|
367
|
+
{
|
|
368
|
+
"name": "bisect",
|
|
369
|
+
"description": "Use binary search to find the commit that introduced a bug",
|
|
370
|
+
"examples": ["git bisect start", "git bisect bad", "git bisect good v1.0", "git bisect reset"]
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"name": "submodule",
|
|
374
|
+
"description": "Initialize, update or inspect submodules",
|
|
375
|
+
"options": [
|
|
376
|
+
{ "name": "add", "description": "Add a submodule" },
|
|
377
|
+
{ "name": "init", "description": "Initialize submodules" },
|
|
378
|
+
{ "name": "update", "description": "Update submodules" },
|
|
379
|
+
{ "name": "status", "description": "Show status of submodules" },
|
|
380
|
+
{ "name": "--recursive", "description": "Traverse submodules recursively" },
|
|
381
|
+
{ "name": "--init", "description": "Initialize before update" }
|
|
382
|
+
],
|
|
383
|
+
"examples": ["git submodule add https://github.com/lib/lib.git", "git submodule update --init --recursive"]
|
|
384
|
+
},
|
|
385
|
+
{
|
|
386
|
+
"name": "worktree",
|
|
387
|
+
"description": "Manage multiple working trees",
|
|
388
|
+
"options": [
|
|
389
|
+
{ "name": "add", "description": "Create a new worktree" },
|
|
390
|
+
{ "name": "list", "description": "List linked worktrees" },
|
|
391
|
+
{ "name": "remove", "description": "Remove a worktree" }
|
|
392
|
+
],
|
|
393
|
+
"examples": ["git worktree add ../hotfix hotfix-branch", "git worktree list"]
|
|
394
|
+
}
|
|
395
|
+
],
|
|
396
|
+
"globalOptions": [
|
|
397
|
+
{ "name": "--help", "description": "Display help information" },
|
|
398
|
+
{ "name": "--version", "description": "Output installed Git version" },
|
|
399
|
+
{ "name": "-C", "description": "Run as if started in <path>", "type": "path" },
|
|
400
|
+
{ "name": "--no-pager", "description": "Do not pipe output into a pager" }
|
|
401
|
+
],
|
|
402
|
+
"examples": [
|
|
403
|
+
"git init",
|
|
404
|
+
"git clone https://github.com/user/repo.git",
|
|
405
|
+
"git add . && git commit -m 'Initial commit'",
|
|
406
|
+
"git push origin main",
|
|
407
|
+
"git pull --rebase",
|
|
408
|
+
"git log --oneline --graph --all"
|
|
409
|
+
],
|
|
410
|
+
"relatedCommands": ["gh", "glab", "svn"],
|
|
411
|
+
"contextEngine": {
|
|
412
|
+
"detectors": [
|
|
413
|
+
{
|
|
414
|
+
"name": "current_branch",
|
|
415
|
+
"description": "Current checked-out branch name",
|
|
416
|
+
"command": "git branch --show-current",
|
|
417
|
+
"parser": "text",
|
|
418
|
+
"cacheFor": 5,
|
|
419
|
+
"requiresCmd": "git"
|
|
420
|
+
},
|
|
421
|
+
{
|
|
422
|
+
"name": "local_branches",
|
|
423
|
+
"description": "All local branch names",
|
|
424
|
+
"command": "git branch --list --format='%(refname:short)'",
|
|
425
|
+
"parser": "lines",
|
|
426
|
+
"cacheFor": 10,
|
|
427
|
+
"requiresCmd": "git"
|
|
428
|
+
},
|
|
429
|
+
{
|
|
430
|
+
"name": "remote_branches",
|
|
431
|
+
"description": "All remote-tracking branch names",
|
|
432
|
+
"command": "git branch -r --format='%(refname:short)'",
|
|
433
|
+
"parser": "lines",
|
|
434
|
+
"cacheFor": 30,
|
|
435
|
+
"requiresCmd": "git"
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
"name": "remotes",
|
|
439
|
+
"description": "Configured remote repositories",
|
|
440
|
+
"command": "git remote -v",
|
|
441
|
+
"parser": "lines",
|
|
442
|
+
"cacheFor": 60,
|
|
443
|
+
"requiresCmd": "git"
|
|
444
|
+
},
|
|
445
|
+
{
|
|
446
|
+
"name": "tags",
|
|
447
|
+
"description": "All tags sorted by version",
|
|
448
|
+
"command": "git tag --sort=-v:refname",
|
|
449
|
+
"parser": "lines",
|
|
450
|
+
"cacheFor": 30,
|
|
451
|
+
"requiresCmd": "git"
|
|
452
|
+
},
|
|
453
|
+
{
|
|
454
|
+
"name": "stashes",
|
|
455
|
+
"description": "All stash entries",
|
|
456
|
+
"command": "git stash list",
|
|
457
|
+
"parser": "lines",
|
|
458
|
+
"cacheFor": 10,
|
|
459
|
+
"requiresCmd": "git"
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
"name": "status",
|
|
463
|
+
"description": "Working tree status (porcelain format)",
|
|
464
|
+
"command": "git status --porcelain -b",
|
|
465
|
+
"parser": "lines",
|
|
466
|
+
"cacheFor": 3,
|
|
467
|
+
"requiresCmd": "git"
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
"name": "recent_commits",
|
|
471
|
+
"description": "Last 15 commits (short log)",
|
|
472
|
+
"command": "git log --oneline -15 --no-decorate",
|
|
473
|
+
"parser": "lines",
|
|
474
|
+
"cacheFor": 10,
|
|
475
|
+
"requiresCmd": "git"
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"name": "staged_files",
|
|
479
|
+
"description": "Files currently staged for commit",
|
|
480
|
+
"command": "git diff --cached --name-only",
|
|
481
|
+
"parser": "lines",
|
|
482
|
+
"cacheFor": 3,
|
|
483
|
+
"requiresCmd": "git"
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
"name": "modified_files",
|
|
487
|
+
"description": "Files modified but not staged",
|
|
488
|
+
"command": "git diff --name-only",
|
|
489
|
+
"parser": "lines",
|
|
490
|
+
"cacheFor": 3,
|
|
491
|
+
"requiresCmd": "git"
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
"name": "untracked_files",
|
|
495
|
+
"description": "Untracked files in the repository",
|
|
496
|
+
"command": "git ls-files --others --exclude-standard",
|
|
497
|
+
"parser": "lines",
|
|
498
|
+
"cacheFor": 5,
|
|
499
|
+
"requiresCmd": "git"
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
"name": "upstream_status",
|
|
503
|
+
"description": "Ahead/behind count relative to upstream",
|
|
504
|
+
"command": "git rev-list --left-right --count HEAD...@{upstream}",
|
|
505
|
+
"parser": "text",
|
|
506
|
+
"cacheFor": 15,
|
|
507
|
+
"requiresCmd": "git"
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
"name": "user_config",
|
|
511
|
+
"description": "Current Git user configuration",
|
|
512
|
+
"command": "git config user.name && git config user.email",
|
|
513
|
+
"parser": "lines",
|
|
514
|
+
"cacheFor": 300,
|
|
515
|
+
"requiresCmd": "git"
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
"name": "submodules",
|
|
519
|
+
"description": "Configured submodules and their status",
|
|
520
|
+
"command": "git submodule status",
|
|
521
|
+
"parser": "lines",
|
|
522
|
+
"cacheFor": 60,
|
|
523
|
+
"requiresCmd": "git"
|
|
524
|
+
}
|
|
525
|
+
]
|
|
526
|
+
}
|
|
527
|
+
}
|