gitcoach-cli 1.0.1 → 1.0.3
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/bin/run.js +79 -79
- package/dist/i18n/locales/en.json +393 -365
- package/dist/i18n/locales/es.json +393 -365
- package/dist/i18n/locales/fr.json +393 -365
- package/dist/services/copilot-service.js +11 -11
- package/dist/services/git-service.d.ts +4 -0
- package/dist/services/git-service.d.ts.map +1 -1
- package/dist/services/git-service.js +27 -0
- package/dist/services/git-service.js.map +1 -1
- package/dist/ui/components/prompt.d.ts.map +1 -1
- package/dist/ui/components/prompt.js +14 -4
- package/dist/ui/components/prompt.js.map +1 -1
- package/dist/ui/menus/branch-menu.d.ts +1 -1
- package/dist/ui/menus/branch-menu.d.ts.map +1 -1
- package/dist/ui/menus/branch-menu.js +61 -5
- package/dist/ui/menus/branch-menu.js.map +1 -1
- package/dist/ui/menus/commit-menu.d.ts.map +1 -1
- package/dist/ui/menus/commit-menu.js +10 -1
- package/dist/ui/menus/commit-menu.js.map +1 -1
- package/dist/ui/menus/detached-head-menu.d.ts +4 -0
- package/dist/ui/menus/detached-head-menu.d.ts.map +1 -0
- package/dist/ui/menus/detached-head-menu.js +97 -0
- package/dist/ui/menus/detached-head-menu.js.map +1 -0
- package/dist/ui/menus/help-menu.js +1 -1
- package/dist/ui/menus/main-menu.d.ts.map +1 -1
- package/dist/ui/menus/main-menu.js +17 -1
- package/dist/ui/menus/main-menu.js.map +1 -1
- package/dist/ui/menus/setup-menu.js +105 -105
- package/dist/ui/themes/colored.d.ts +1 -1
- package/dist/ui/themes/colored.d.ts.map +1 -1
- package/dist/ui/themes/colored.js +4 -2
- package/dist/ui/themes/colored.js.map +1 -1
- package/dist/ui/themes/index.d.ts +1 -1
- package/dist/ui/themes/index.d.ts.map +1 -1
- package/dist/ui/themes/monochrome.d.ts +1 -1
- package/dist/ui/themes/monochrome.d.ts.map +1 -1
- package/dist/ui/themes/monochrome.js +2 -1
- package/dist/ui/themes/monochrome.js.map +1 -1
- package/dist/utils/version.d.ts +2 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +3 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +72 -71
|
@@ -1,365 +1,393 @@
|
|
|
1
|
-
{
|
|
2
|
-
"app": {
|
|
3
|
-
"name": "GitCoach",
|
|
4
|
-
"tagline": "Your AI-Powered Git Coach",
|
|
5
|
-
"version": "v{{version}}",
|
|
6
|
-
"welcome": "Welcome to GitCoach!",
|
|
7
|
-
"goodbye": "Goodbye! Happy coding!"
|
|
8
|
-
},
|
|
9
|
-
"menu": {
|
|
10
|
-
"title": "Main Menu",
|
|
11
|
-
"status": "Status",
|
|
12
|
-
"statusDesc": "View current changes",
|
|
13
|
-
"add": "Add",
|
|
14
|
-
"addDesc": "Stage files for commit",
|
|
15
|
-
"commit": "Commit",
|
|
16
|
-
"commitDesc": "Save your changes",
|
|
17
|
-
"push": "Push",
|
|
18
|
-
"pushDesc": "Upload to remote",
|
|
19
|
-
"pull": "Pull",
|
|
20
|
-
"pullDesc": "Download changes",
|
|
21
|
-
"branch": "Branch",
|
|
22
|
-
"branchDesc": "Manage branches",
|
|
23
|
-
"undo": "Undo",
|
|
24
|
-
"undoDesc": "Undo actions",
|
|
25
|
-
"history": "History",
|
|
26
|
-
"historyDesc": "View commit history",
|
|
27
|
-
"stash": "Stash",
|
|
28
|
-
"stashDesc": "Save work temporarily",
|
|
29
|
-
"config": "Settings",
|
|
30
|
-
"configDesc": "Configure GitCoach",
|
|
31
|
-
"stats": "Statistics",
|
|
32
|
-
"statsDesc": "View your progress",
|
|
33
|
-
"help": "Help",
|
|
34
|
-
"helpDesc": "Get assistance",
|
|
35
|
-
"quit": "Quit",
|
|
36
|
-
"quitDesc": "Exit GitCoach",
|
|
37
|
-
"back": "Back",
|
|
38
|
-
"backDesc": "Return to previous menu"
|
|
39
|
-
},
|
|
40
|
-
"commands": {
|
|
41
|
-
"status": {
|
|
42
|
-
"title": "Repository Status",
|
|
43
|
-
"clean": "Working tree is clean. Nothing to commit.",
|
|
44
|
-
"staged": "Staged changes (ready to commit):",
|
|
45
|
-
"unstaged": "Unstaged changes:",
|
|
46
|
-
"untracked": "Untracked files:",
|
|
47
|
-
"branch": "On branch: {{branch}}",
|
|
48
|
-
"ahead": "Your branch is ahead of '{{remote}}' by {{count}} commit(s).",
|
|
49
|
-
"behind": "Your branch is behind '{{remote}}' by {{count}} commit(s).",
|
|
50
|
-
"diverged": "Your branch and '{{remote}}' have diverged."
|
|
51
|
-
},
|
|
52
|
-
"add": {
|
|
53
|
-
"title": "Stage Files",
|
|
54
|
-
"selectFiles": "Select files to stage:",
|
|
55
|
-
"noFiles": "No files to stage.",
|
|
56
|
-
"allFiles": "Stage all files",
|
|
57
|
-
"success": "Successfully staged {{count}} file(s).",
|
|
58
|
-
"staged": "Staged: {{file}}"
|
|
59
|
-
},
|
|
60
|
-
"commit": {
|
|
61
|
-
"title": "Commit Changes",
|
|
62
|
-
"noStaged": "No staged changes to commit. Use 'Add' first.",
|
|
63
|
-
"enterMessage": "Enter commit message:",
|
|
64
|
-
"generateAI": "Generate commit message with AI",
|
|
65
|
-
"generating": "Generating commit message...",
|
|
66
|
-
"suggested": "Suggested message: {{message}}",
|
|
67
|
-
"useGenerated": "Use this message?",
|
|
68
|
-
"editMessage": "Edit message",
|
|
69
|
-
"success": "Successfully committed: {{message}}",
|
|
70
|
-
"cancelled": "Commit cancelled.",
|
|
71
|
-
"emptyToCancel": "(Leave empty to cancel)",
|
|
72
|
-
"messageTooShort": "Commit message must be at least 3 characters",
|
|
73
|
-
"copilotUnavailable": "GitHub Copilot CLI not available - enter message manually",
|
|
74
|
-
"aiGenerationFailed": "AI generation failed - enter message manually",
|
|
75
|
-
"enterManually": "Enter your commit message:"
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
"
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
"
|
|
104
|
-
"
|
|
105
|
-
"
|
|
106
|
-
"
|
|
107
|
-
"
|
|
108
|
-
"
|
|
109
|
-
"
|
|
110
|
-
"
|
|
111
|
-
"
|
|
112
|
-
"
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
"
|
|
116
|
-
"
|
|
117
|
-
"
|
|
118
|
-
"
|
|
119
|
-
"
|
|
120
|
-
"
|
|
121
|
-
"
|
|
122
|
-
"
|
|
123
|
-
"
|
|
124
|
-
"
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"
|
|
132
|
-
"
|
|
133
|
-
"
|
|
134
|
-
"
|
|
135
|
-
"
|
|
136
|
-
"
|
|
137
|
-
"
|
|
138
|
-
"
|
|
139
|
-
"
|
|
140
|
-
"
|
|
141
|
-
"
|
|
142
|
-
"
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
"
|
|
146
|
-
"
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
"
|
|
150
|
-
"
|
|
151
|
-
"
|
|
152
|
-
"
|
|
153
|
-
"
|
|
154
|
-
"
|
|
155
|
-
"
|
|
156
|
-
"
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
"
|
|
162
|
-
"
|
|
163
|
-
"
|
|
164
|
-
"
|
|
165
|
-
"
|
|
166
|
-
"
|
|
167
|
-
"
|
|
168
|
-
"
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
"
|
|
172
|
-
"
|
|
173
|
-
"
|
|
174
|
-
"
|
|
175
|
-
"
|
|
176
|
-
"
|
|
177
|
-
"
|
|
178
|
-
"
|
|
179
|
-
"
|
|
180
|
-
"
|
|
181
|
-
"
|
|
182
|
-
"
|
|
183
|
-
"
|
|
184
|
-
"
|
|
185
|
-
"
|
|
186
|
-
"
|
|
187
|
-
"
|
|
188
|
-
"
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
"
|
|
205
|
-
"
|
|
206
|
-
"
|
|
207
|
-
"
|
|
208
|
-
"
|
|
209
|
-
"
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
"
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
"
|
|
216
|
-
"
|
|
217
|
-
"
|
|
218
|
-
"
|
|
219
|
-
"
|
|
220
|
-
"
|
|
221
|
-
"
|
|
222
|
-
"
|
|
223
|
-
"
|
|
224
|
-
"
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
"
|
|
228
|
-
"
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
"
|
|
232
|
-
"
|
|
233
|
-
"
|
|
234
|
-
"
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
"
|
|
238
|
-
"
|
|
239
|
-
"
|
|
240
|
-
"
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
"
|
|
244
|
-
"
|
|
245
|
-
"
|
|
246
|
-
"
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
"
|
|
250
|
-
"
|
|
251
|
-
"
|
|
252
|
-
"
|
|
253
|
-
"
|
|
254
|
-
"
|
|
255
|
-
"
|
|
256
|
-
"
|
|
257
|
-
"
|
|
258
|
-
"
|
|
259
|
-
"
|
|
260
|
-
"
|
|
261
|
-
"
|
|
262
|
-
"
|
|
263
|
-
"
|
|
264
|
-
"
|
|
265
|
-
"
|
|
266
|
-
"
|
|
267
|
-
"
|
|
268
|
-
"
|
|
269
|
-
"
|
|
270
|
-
"
|
|
271
|
-
"
|
|
272
|
-
"
|
|
273
|
-
"
|
|
274
|
-
"
|
|
275
|
-
"
|
|
276
|
-
"
|
|
277
|
-
"
|
|
278
|
-
"
|
|
279
|
-
"
|
|
280
|
-
"
|
|
281
|
-
"
|
|
282
|
-
"
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
"
|
|
286
|
-
"
|
|
287
|
-
"
|
|
288
|
-
"
|
|
289
|
-
"
|
|
290
|
-
"
|
|
291
|
-
"
|
|
292
|
-
"
|
|
293
|
-
"
|
|
294
|
-
"
|
|
295
|
-
},
|
|
296
|
-
"
|
|
297
|
-
"title": "
|
|
298
|
-
"
|
|
299
|
-
"
|
|
300
|
-
"
|
|
301
|
-
"
|
|
302
|
-
"
|
|
303
|
-
"
|
|
304
|
-
"
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
"
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
"
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
"
|
|
334
|
-
"
|
|
335
|
-
"
|
|
336
|
-
"
|
|
337
|
-
"
|
|
338
|
-
"
|
|
339
|
-
"
|
|
340
|
-
"
|
|
341
|
-
"
|
|
342
|
-
"
|
|
343
|
-
"
|
|
344
|
-
"
|
|
345
|
-
"
|
|
346
|
-
"
|
|
347
|
-
"
|
|
348
|
-
"
|
|
349
|
-
"
|
|
350
|
-
"
|
|
351
|
-
"
|
|
352
|
-
"
|
|
353
|
-
"
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
"
|
|
357
|
-
"
|
|
358
|
-
"
|
|
359
|
-
"
|
|
360
|
-
"
|
|
361
|
-
"
|
|
362
|
-
"
|
|
363
|
-
"
|
|
364
|
-
|
|
365
|
-
|
|
1
|
+
{
|
|
2
|
+
"app": {
|
|
3
|
+
"name": "GitCoach",
|
|
4
|
+
"tagline": "Your AI-Powered Git Coach",
|
|
5
|
+
"version": "v{{version}}",
|
|
6
|
+
"welcome": "Welcome to GitCoach!",
|
|
7
|
+
"goodbye": "Goodbye! Happy coding!"
|
|
8
|
+
},
|
|
9
|
+
"menu": {
|
|
10
|
+
"title": "Main Menu",
|
|
11
|
+
"status": "Status",
|
|
12
|
+
"statusDesc": "View current changes",
|
|
13
|
+
"add": "Add",
|
|
14
|
+
"addDesc": "Stage files for commit",
|
|
15
|
+
"commit": "Commit",
|
|
16
|
+
"commitDesc": "Save your changes",
|
|
17
|
+
"push": "Push",
|
|
18
|
+
"pushDesc": "Upload to remote",
|
|
19
|
+
"pull": "Pull",
|
|
20
|
+
"pullDesc": "Download changes",
|
|
21
|
+
"branch": "Branch",
|
|
22
|
+
"branchDesc": "Manage branches",
|
|
23
|
+
"undo": "Undo",
|
|
24
|
+
"undoDesc": "Undo actions",
|
|
25
|
+
"history": "History",
|
|
26
|
+
"historyDesc": "View commit history",
|
|
27
|
+
"stash": "Stash",
|
|
28
|
+
"stashDesc": "Save work temporarily",
|
|
29
|
+
"config": "Settings",
|
|
30
|
+
"configDesc": "Configure GitCoach",
|
|
31
|
+
"stats": "Statistics",
|
|
32
|
+
"statsDesc": "View your progress",
|
|
33
|
+
"help": "Help",
|
|
34
|
+
"helpDesc": "Get assistance",
|
|
35
|
+
"quit": "Quit",
|
|
36
|
+
"quitDesc": "Exit GitCoach",
|
|
37
|
+
"back": "Back",
|
|
38
|
+
"backDesc": "Return to previous menu"
|
|
39
|
+
},
|
|
40
|
+
"commands": {
|
|
41
|
+
"status": {
|
|
42
|
+
"title": "Repository Status",
|
|
43
|
+
"clean": "Working tree is clean. Nothing to commit.",
|
|
44
|
+
"staged": "Staged changes (ready to commit):",
|
|
45
|
+
"unstaged": "Unstaged changes:",
|
|
46
|
+
"untracked": "Untracked files:",
|
|
47
|
+
"branch": "On branch: {{branch}}",
|
|
48
|
+
"ahead": "Your branch is ahead of '{{remote}}' by {{count}} commit(s).",
|
|
49
|
+
"behind": "Your branch is behind '{{remote}}' by {{count}} commit(s).",
|
|
50
|
+
"diverged": "Your branch and '{{remote}}' have diverged."
|
|
51
|
+
},
|
|
52
|
+
"add": {
|
|
53
|
+
"title": "Stage Files",
|
|
54
|
+
"selectFiles": "Select files to stage:",
|
|
55
|
+
"noFiles": "No files to stage.",
|
|
56
|
+
"allFiles": "Stage all files",
|
|
57
|
+
"success": "Successfully staged {{count}} file(s).",
|
|
58
|
+
"staged": "Staged: {{file}}"
|
|
59
|
+
},
|
|
60
|
+
"commit": {
|
|
61
|
+
"title": "Commit Changes",
|
|
62
|
+
"noStaged": "No staged changes to commit. Use 'Add' first.",
|
|
63
|
+
"enterMessage": "Enter commit message:",
|
|
64
|
+
"generateAI": "Generate commit message with AI",
|
|
65
|
+
"generating": "Generating commit message...",
|
|
66
|
+
"suggested": "Suggested message: {{message}}",
|
|
67
|
+
"useGenerated": "Use this message?",
|
|
68
|
+
"editMessage": "Edit message",
|
|
69
|
+
"success": "Successfully committed: {{message}}",
|
|
70
|
+
"cancelled": "Commit cancelled.",
|
|
71
|
+
"emptyToCancel": "(Leave empty to cancel)",
|
|
72
|
+
"messageTooShort": "Commit message must be at least 3 characters",
|
|
73
|
+
"copilotUnavailable": "GitHub Copilot CLI not available - enter message manually",
|
|
74
|
+
"aiGenerationFailed": "AI generation failed - enter message manually",
|
|
75
|
+
"enterManually": "Enter your commit message:",
|
|
76
|
+
"conflictsDetected": "Merge conflicts detected! Resolve them before committing.",
|
|
77
|
+
"conflictedFiles": "Conflicted files:"
|
|
78
|
+
},
|
|
79
|
+
"push": {
|
|
80
|
+
"title": "Push Changes",
|
|
81
|
+
"confirm": "Push {{count}} commit(s) to {{remote}}/{{branch}}?",
|
|
82
|
+
"nothingToPush": "Nothing to push. Your branch is up to date.",
|
|
83
|
+
"pushing": "Pushing to {{remote}}...",
|
|
84
|
+
"success": "Successfully pushed to {{remote}}/{{branch}}.",
|
|
85
|
+
"failed": "Push failed: {{error}}",
|
|
86
|
+
"forcePush": "Force push",
|
|
87
|
+
"forcePushWarning": "Force push will overwrite remote history. Are you sure?",
|
|
88
|
+
"remoteBehind": "Remote has {{count}} new commit(s). You should pull first!",
|
|
89
|
+
"behindAction": "What would you like to do?",
|
|
90
|
+
"pullThenPush": "Pull first, then push",
|
|
91
|
+
"noUpstream": "Branch '{{branch}}' has no upstream. {{count}} commit(s) will be pushed.",
|
|
92
|
+
"firstPush": "First Push"
|
|
93
|
+
},
|
|
94
|
+
"pull": {
|
|
95
|
+
"title": "Pull Changes",
|
|
96
|
+
"pulling": "Pulling from {{remote}}...",
|
|
97
|
+
"success": "Successfully pulled {{count}} commit(s).",
|
|
98
|
+
"upToDate": "Already up to date.",
|
|
99
|
+
"conflicts": "Merge conflicts detected. Please resolve them manually.",
|
|
100
|
+
"failed": "Pull failed: {{error}}"
|
|
101
|
+
},
|
|
102
|
+
"branch": {
|
|
103
|
+
"title": "Branch Management",
|
|
104
|
+
"current": "Current branch: {{branch}}",
|
|
105
|
+
"list": "Available branches:",
|
|
106
|
+
"create": "Create new branch",
|
|
107
|
+
"switch": "Switch branch",
|
|
108
|
+
"delete": "Delete branch",
|
|
109
|
+
"merge": "Merge a branch",
|
|
110
|
+
"enterName": "Enter branch name:",
|
|
111
|
+
"createSuccess": "Created branch: {{branch}}",
|
|
112
|
+
"switchSuccess": "Switched to branch: {{branch}}",
|
|
113
|
+
"deleteSuccess": "Deleted branch: {{branch}}",
|
|
114
|
+
"deleteConfirm": "Delete branch '{{branch}}'? This cannot be undone.",
|
|
115
|
+
"cannotDeleteCurrent": "Cannot delete the current branch.",
|
|
116
|
+
"noOtherBranches": "No other branches available.",
|
|
117
|
+
"mergeExplain": "Merge combines changes from another branch into your current branch.\nYou are on '{{branch}}'. Which branch do you want to merge here?",
|
|
118
|
+
"selectToMerge": "Select branch to merge:",
|
|
119
|
+
"willExecute": "Will execute:",
|
|
120
|
+
"mergeConfirm": "Merge branch '{{branch}}'? Continue?",
|
|
121
|
+
"merging": "Merging {{branch}}...",
|
|
122
|
+
"mergeSuccess": "Branch '{{branch}}' merged successfully!",
|
|
123
|
+
"mergeConflicts": "Merge conflicts detected! Resolve them before continuing.",
|
|
124
|
+
"conflictedFiles": "Conflicted files:"
|
|
125
|
+
},
|
|
126
|
+
"undo": {
|
|
127
|
+
"title": "Undo Actions",
|
|
128
|
+
"selectAction": "What would you like to undo?",
|
|
129
|
+
"softReset": "Undo last commit (keep files)",
|
|
130
|
+
"softResetDesc": "Removes commit but keeps your changes staged",
|
|
131
|
+
"hardReset": "Undo last commit (delete all)",
|
|
132
|
+
"hardResetDesc": "Removes commit AND deletes all changes",
|
|
133
|
+
"unstage": "Unstage files",
|
|
134
|
+
"unstageDesc": "Remove files from staging area",
|
|
135
|
+
"restore": "Discard file changes",
|
|
136
|
+
"restoreDesc": "Revert files to last commit",
|
|
137
|
+
"whatItDoes": "What this does:",
|
|
138
|
+
"softResetExplain": "This will undo your last commit but keep all your file changes. You can then edit and commit again.",
|
|
139
|
+
"hardResetWarning": "This will permanently delete your last commit AND all uncommitted changes. This cannot be undone!",
|
|
140
|
+
"unstageExplain": "This will remove selected files from the staging area. Your changes will remain in the working directory.",
|
|
141
|
+
"restoreWarning": "This will permanently discard all changes to selected files. Your work will be lost!",
|
|
142
|
+
"noCommits": "No commits to undo.",
|
|
143
|
+
"lastCommit": "Last commit:",
|
|
144
|
+
"confirmSoftReset": "Undo this commit? (files will be kept)",
|
|
145
|
+
"confirmHardReset": "Are you sure? This will DELETE all changes!",
|
|
146
|
+
"confirmHardReset2": "FINAL WARNING: Type 'yes' to confirm permanent deletion",
|
|
147
|
+
"softResetSuccess": "Commit undone! Your changes are still staged.",
|
|
148
|
+
"hardResetSuccess": "Commit and all changes have been deleted.",
|
|
149
|
+
"filesKept": "Your files are still staged. You can edit and commit again.",
|
|
150
|
+
"noStagedFiles": "No files are currently staged.",
|
|
151
|
+
"stagedFiles": "Staged files:",
|
|
152
|
+
"selectFilesToUnstage": "Select files to unstage:",
|
|
153
|
+
"unstageSuccess": "{{count}} file(s) unstaged successfully.",
|
|
154
|
+
"noModifiedFiles": "No modified files to restore.",
|
|
155
|
+
"modifiedFiles": "Modified files:",
|
|
156
|
+
"selectFilesToRestore": "Select files to restore:",
|
|
157
|
+
"confirmRestore": "Discard changes to {{count}} file(s)? This cannot be undone!",
|
|
158
|
+
"restoreSuccess": "{{count}} file(s) restored to last commit."
|
|
159
|
+
},
|
|
160
|
+
"history": {
|
|
161
|
+
"title": "Commit History",
|
|
162
|
+
"recentCommits": "Recent commits:",
|
|
163
|
+
"noCommits": "No commits yet in this repository.",
|
|
164
|
+
"viewMore": "Load more commits",
|
|
165
|
+
"selectCommit": "Select a commit to view details:",
|
|
166
|
+
"commitDetails": "Commit Details",
|
|
167
|
+
"commitNotFound": "Commit not found.",
|
|
168
|
+
"changedFiles": "Changed files in this commit:"
|
|
169
|
+
},
|
|
170
|
+
"stash": {
|
|
171
|
+
"title": "Stash - Save Work Temporarily",
|
|
172
|
+
"selectAction": "What would you like to do?",
|
|
173
|
+
"save": "Save current work",
|
|
174
|
+
"saveDesc": "Stash all uncommitted changes",
|
|
175
|
+
"list": "View stashes",
|
|
176
|
+
"listDesc": "See all saved stashes",
|
|
177
|
+
"apply": "Apply a stash",
|
|
178
|
+
"applyDesc": "Restore changes (keep stash)",
|
|
179
|
+
"pop": "Pop latest stash",
|
|
180
|
+
"popDesc": "Restore and delete latest stash",
|
|
181
|
+
"drop": "Delete a stash",
|
|
182
|
+
"dropDesc": "Permanently remove a stash",
|
|
183
|
+
"whatItDoes": "What this does:",
|
|
184
|
+
"saveExplain": "This will save all your uncommitted changes and clean your working directory. You can restore them later.",
|
|
185
|
+
"applyExplain": "This will restore the selected stash but keep it in the stash list.",
|
|
186
|
+
"popExplain": "This will restore the latest stash and remove it from the list.",
|
|
187
|
+
"dropWarning": "This will permanently delete the selected stash. This cannot be undone!",
|
|
188
|
+
"nothingToStash": "No changes to stash. Your working tree is already clean.",
|
|
189
|
+
"enterMessage": "Enter a description (optional):",
|
|
190
|
+
"saveSuccess": "Changes stashed successfully!",
|
|
191
|
+
"workingTreeClean": "Your working directory is now clean.",
|
|
192
|
+
"noStashes": "No stashes saved.",
|
|
193
|
+
"yourStashes": "Your stashes:",
|
|
194
|
+
"selectStash": "Select a stash to apply:",
|
|
195
|
+
"selectStashToDrop": "Select a stash to delete:",
|
|
196
|
+
"applySuccess": "Stash applied successfully!",
|
|
197
|
+
"stashKept": "The stash is still saved. Use 'pop' to apply and remove.",
|
|
198
|
+
"popSuccess": "Stash applied and removed!",
|
|
199
|
+
"confirmDrop": "Delete this stash? This cannot be undone!",
|
|
200
|
+
"dropSuccess": "Stash deleted."
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
"time": {
|
|
204
|
+
"justNow": "just now",
|
|
205
|
+
"minutesAgo": "{{count}} min ago",
|
|
206
|
+
"hoursAgo": "{{count}} hours ago",
|
|
207
|
+
"daysAgo": "{{count}} days ago",
|
|
208
|
+
"weeksAgo": "{{count}} weeks ago",
|
|
209
|
+
"monthsAgo": "{{count}} months ago"
|
|
210
|
+
},
|
|
211
|
+
"warnings": {
|
|
212
|
+
"title": "Warning",
|
|
213
|
+
"dangerous": "dangerous",
|
|
214
|
+
"uncommittedChanges": "You have uncommitted changes that will be lost!",
|
|
215
|
+
"uncommittedChangesAction": "Commit or stash your changes before proceeding.",
|
|
216
|
+
"forcePush": "Force push will overwrite remote history!",
|
|
217
|
+
"forcePushAction": "This action cannot be undone. Make sure you know what you're doing.",
|
|
218
|
+
"wrongBranch": "You are on branch '{{current}}', not '{{expected}}'.",
|
|
219
|
+
"wrongBranchAction": "Switch to the correct branch before proceeding.",
|
|
220
|
+
"detachedHead": "You are in a detached HEAD state!",
|
|
221
|
+
"detachedHeadAction": "Create a branch to save your work.",
|
|
222
|
+
"noRemote": "No remote repository configured.",
|
|
223
|
+
"notGitRepo": "This directory is not a Git repository.",
|
|
224
|
+
"copilotUnavailable": "GitHub Copilot CLI is not available. Some features may be limited."
|
|
225
|
+
},
|
|
226
|
+
"errors": {
|
|
227
|
+
"title": "Error",
|
|
228
|
+
"generic": "An error occurred: {{message}}",
|
|
229
|
+
"gitNotInstalled": "Git is not installed or not in PATH.",
|
|
230
|
+
"networkError": "Network error. Please check your connection.",
|
|
231
|
+
"permissionDenied": "Permission denied. Check your credentials.",
|
|
232
|
+
"invalidInput": "Invalid input: {{message}}",
|
|
233
|
+
"branchExists": "Branch '{{branch}}' already exists.",
|
|
234
|
+
"branchNotFound": "Branch '{{branch}}' not found.",
|
|
235
|
+
"mergeConflict": "Merge conflict in {{file}}.",
|
|
236
|
+
"explainWithAI": "Would you like an AI explanation of this error?",
|
|
237
|
+
"analyzing": "Analyzing error...",
|
|
238
|
+
"explanation": "Explanation",
|
|
239
|
+
"noExplanation": "Could not explain the error",
|
|
240
|
+
"explainFailed": "Failed to get explanation"
|
|
241
|
+
},
|
|
242
|
+
"success": {
|
|
243
|
+
"title": "Success",
|
|
244
|
+
"operationComplete": "Operation completed successfully.",
|
|
245
|
+
"saved": "Changes saved.",
|
|
246
|
+
"configUpdated": "Configuration updated."
|
|
247
|
+
},
|
|
248
|
+
"setup": {
|
|
249
|
+
"welcome": "Welcome to GitCoach Setup!",
|
|
250
|
+
"selectLanguage": "Select your preferred language:",
|
|
251
|
+
"selectTheme": "Select your preferred theme:",
|
|
252
|
+
"selectLevel": "What is your Git experience level?",
|
|
253
|
+
"complete": "Setup complete! You're ready to use GitCoach.",
|
|
254
|
+
"tip": "Tip: You can change these settings anytime in the config menu.",
|
|
255
|
+
"notGitRepo": "This directory is not a Git repository.",
|
|
256
|
+
"menuTitle": "What would you like to do?",
|
|
257
|
+
"init": "Init",
|
|
258
|
+
"initDesc": "Initialize a new Git repository",
|
|
259
|
+
"clone": "Clone",
|
|
260
|
+
"cloneDesc": "Clone an existing repository",
|
|
261
|
+
"quitDesc": "Exit GitCoach",
|
|
262
|
+
"initInProgress": "Initializing Git repository...",
|
|
263
|
+
"initSuccess": "Git repository initialized successfully!",
|
|
264
|
+
"addRemoteQuestion": "Would you like to add a remote origin?",
|
|
265
|
+
"remoteUrlPrompt": "Enter the remote URL (GitHub, GitLab, etc.):",
|
|
266
|
+
"remoteUrlRequired": "Remote URL is required.",
|
|
267
|
+
"remoteUrlInvalid": "Please enter a valid Git URL.",
|
|
268
|
+
"remoteAdded": "Remote 'origin' added: {{url}}",
|
|
269
|
+
"repoReady": "Your repository is ready! You can now start working.",
|
|
270
|
+
"cloneUrlPrompt": "Enter the repository URL to clone:",
|
|
271
|
+
"cloneUrlRequired": "Repository URL is required.",
|
|
272
|
+
"cloneDirPrompt": "Enter directory name (leave empty for default):",
|
|
273
|
+
"cloneInProgress": "Cloning repository...",
|
|
274
|
+
"cloneSuccess": "Repository cloned successfully to '{{dir}}'!",
|
|
275
|
+
"cloneNextStep": "Run 'cd {{dir}}' then 'gitcoach' to start.",
|
|
276
|
+
"gitignoreQuestion": "Would you like to create a .gitignore file?",
|
|
277
|
+
"gitignoreType": "Select project type:",
|
|
278
|
+
"gitignoreNode": "Node.js",
|
|
279
|
+
"gitignorePython": "Python",
|
|
280
|
+
"gitignoreJava": "Java",
|
|
281
|
+
"gitignoreGeneric": "Generic",
|
|
282
|
+
"gitignoreCreated": ".gitignore file created!",
|
|
283
|
+
"copilotTitle": "GitHub Copilot CLI",
|
|
284
|
+
"copilotDetected": "GitHub Copilot CLI is installed and ready!",
|
|
285
|
+
"copilotNotInstalled": "GitHub Copilot CLI is not installed.",
|
|
286
|
+
"copilotBenefits": "Copilot CLI enables AI-powered features:\n• Generate intelligent commit messages\n• Answer your Git questions\n• Get contextual suggestions",
|
|
287
|
+
"copilotInstallQuestion": "Would you like to install GitHub Copilot CLI now?",
|
|
288
|
+
"copilotSkipped": "Continuing without Copilot CLI. You can install it later.",
|
|
289
|
+
"copilotInstalling": "Installing GitHub Copilot CLI...",
|
|
290
|
+
"copilotInstallSuccess": "GitHub Copilot CLI installed successfully!",
|
|
291
|
+
"copilotInstallNote": "You may need to authenticate with 'copilot auth' on first use.",
|
|
292
|
+
"copilotInstallFailed": "Failed to install GitHub Copilot CLI",
|
|
293
|
+
"copilotInstallFailedDetail": "The automatic installation failed. This may be due to permissions or network issues.",
|
|
294
|
+
"copilotManualInstall": "To install manually, run:\nnpm install -g @githubnext/github-copilot-cli"
|
|
295
|
+
},
|
|
296
|
+
"config": {
|
|
297
|
+
"title": "Settings",
|
|
298
|
+
"language": "Language",
|
|
299
|
+
"theme": "Theme",
|
|
300
|
+
"experienceLevel": "Experience Level",
|
|
301
|
+
"showTips": "Show Tips",
|
|
302
|
+
"confirmDestructive": "Confirm Destructive Actions",
|
|
303
|
+
"autoCommitMsg": "Auto-generate Commit Messages",
|
|
304
|
+
"defaultBranch": "Default Branch",
|
|
305
|
+
"reset": "Reset to Defaults",
|
|
306
|
+
"resetConfirm": "Reset all settings to defaults?"
|
|
307
|
+
},
|
|
308
|
+
"stats": {
|
|
309
|
+
"title": "Your Statistics",
|
|
310
|
+
"totalCommits": "Total Commits",
|
|
311
|
+
"errorsPrevented": "Errors Prevented",
|
|
312
|
+
"aiCommits": "AI-Generated Commits",
|
|
313
|
+
"timeSaved": "Estimated Time Saved",
|
|
314
|
+
"noData": "No statistics yet. Start using GitCoach!",
|
|
315
|
+
"aiPercentage": "AI-assisted commits: {{percentage}}%",
|
|
316
|
+
"mistakesAvoided": "You've avoided {{count}} potential mistake(s)!"
|
|
317
|
+
},
|
|
318
|
+
"tips": {
|
|
319
|
+
"beginner": {
|
|
320
|
+
"status": "Use 'Status' to see what files have changed before committing.",
|
|
321
|
+
"add": "Stage files with 'Add' before committing. Think of staging as preparing your changes.",
|
|
322
|
+
"commit": "Write clear commit messages that explain WHY you made the change.",
|
|
323
|
+
"push": "Push regularly to back up your work on the remote server.",
|
|
324
|
+
"pull": "Pull before starting work to avoid merge conflicts.",
|
|
325
|
+
"branch": "Use branches to work on features without affecting the main code."
|
|
326
|
+
},
|
|
327
|
+
"intermediate": {
|
|
328
|
+
"commit": "Use conventional commits (feat:, fix:, docs:) for better history.",
|
|
329
|
+
"rebase": "Consider rebasing for a cleaner history before merging."
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
"help": {
|
|
333
|
+
"title": "Help",
|
|
334
|
+
"selectAction": "What would you like to do?",
|
|
335
|
+
"askQuestion": "Ask a Git question (AI)",
|
|
336
|
+
"quickHelp": "Quick reference",
|
|
337
|
+
"about": "About GitCoach",
|
|
338
|
+
"askHint": "Ask any Git question in natural language. Leave empty to cancel.",
|
|
339
|
+
"askExamples": "Examples: \"How do I undo my last commit?\" or \"What is a rebase?\"",
|
|
340
|
+
"enterQuestion": "Your question:",
|
|
341
|
+
"questionTooShort": "Please enter a more detailed question",
|
|
342
|
+
"thinking": "Thinking...",
|
|
343
|
+
"answer": "Answer",
|
|
344
|
+
"noAnswer": "Could not get an answer",
|
|
345
|
+
"errorAsking": "Error getting answer",
|
|
346
|
+
"copilotUnavailable": "GitHub Copilot CLI is not available. Install it to ask questions.",
|
|
347
|
+
"quickRefTitle": "Quick Reference",
|
|
348
|
+
"navigation": "Navigation:",
|
|
349
|
+
"navArrows": "Use arrow keys to navigate menus",
|
|
350
|
+
"navEnter": "Press Enter to select an option",
|
|
351
|
+
"navCtrlC": "Press Ctrl+C to exit at any time",
|
|
352
|
+
"mainCommands": "Main Commands:",
|
|
353
|
+
"additionalCommands": "Additional Commands:",
|
|
354
|
+
"tips": "Tips:",
|
|
355
|
+
"tip1": "GitCoach warns you before dangerous operations",
|
|
356
|
+
"tip2": "AI can generate commit messages from your changes",
|
|
357
|
+
"tip3": "Change experience level in settings for more/less guidance",
|
|
358
|
+
"aboutDesc": "GitCoach is an interactive CLI tool that helps developers master Git",
|
|
359
|
+
"aboutDesc2": "through guided menus, intelligent suggestions, and real-time error prevention.",
|
|
360
|
+
"features": "Features:",
|
|
361
|
+
"feature1": "Interactive menus for all Git operations",
|
|
362
|
+
"feature2": "AI-generated commit messages with Copilot CLI",
|
|
363
|
+
"feature3": "Error prevention and warnings",
|
|
364
|
+
"feature4": "Multilingual support (EN, FR, ES)",
|
|
365
|
+
"feature5": "Beginner, Intermediate, and Expert modes"
|
|
366
|
+
},
|
|
367
|
+
"prompts": {
|
|
368
|
+
"confirm": "Are you sure?",
|
|
369
|
+
"yes": "Yes",
|
|
370
|
+
"no": "No",
|
|
371
|
+
"yesKey": "Y",
|
|
372
|
+
"noKey": "n",
|
|
373
|
+
"cancel": "Cancel",
|
|
374
|
+
"continue": "Continue",
|
|
375
|
+
"pressEnter": "Press Enter to continue...",
|
|
376
|
+
"select": "Select an option",
|
|
377
|
+
"enterValue": "Enter value"
|
|
378
|
+
},
|
|
379
|
+
"detachedHead": {
|
|
380
|
+
"title": "Detached HEAD",
|
|
381
|
+
"explanation": "You are in a detached HEAD state.\n\nThis means you are not on any branch. Your commits may be lost if you switch branches.\n\nThis often happens after an interrupted rebase or checking out a specific commit.",
|
|
382
|
+
"selectAction": "What would you like to do?",
|
|
383
|
+
"createBranch": "Create a new branch",
|
|
384
|
+
"returnToMain": "Return to main branch",
|
|
385
|
+
"stashAndReturn": "Save changes and return",
|
|
386
|
+
"ignore": "Ignore and continue",
|
|
387
|
+
"enterBranchName": "Enter name for the new branch:",
|
|
388
|
+
"branchCreated": "Branch '{{branch}}' created! Your commits are now safe.",
|
|
389
|
+
"returnedToMain": "Returned to {{branch}}.",
|
|
390
|
+
"stashedAndReturned": "Changes saved and returned to {{branch}}.",
|
|
391
|
+
"commandExecuted": "Command executed: {{command}}"
|
|
392
|
+
}
|
|
393
|
+
}
|