feat(p9): commit/push avancé dans l'IDE (staging sélectif, discard, amend, fetch/pull)
- components/workspace/CommitPanel.vue : staging sélectif par fichier (stage/unstage/stage all/unstage all), discard avec confirmation (includeUntracked), zone de commit (message + amend), commit mode 'staged', push, fetch, pull --ff-only (rebase proposé en cas de divergence), gestion 409 ALREADY_PUSHED - components/workspace/FileRow.vue : ligne de fichier réutilisable (badge statut M/A/D/?/U + clic → diff + slot actions) - WorkspaceView : CommitPanel remplace ChangedFilesPanel ; @changed → reload des changements - stores/worktrees : applyWorktree (upsert depuis les mutations git → header live) - i18n EN+FR (commit.*) ; acceptance-p9.mjs (staging sélectif, amend OK/409, pull ff-only OK + divergence refusée)
This commit is contained in:
@@ -235,6 +235,25 @@ export default {
|
||||
unstaged: 'unstaged',
|
||||
conflicts: 'conflicts',
|
||||
},
|
||||
commit: {
|
||||
staged: 'Staged',
|
||||
changes: 'Changes',
|
||||
stage: 'Stage',
|
||||
unstage: 'Unstage',
|
||||
stageAll: 'Stage all',
|
||||
unstageAll: 'Unstage all',
|
||||
discard: 'Discard',
|
||||
confirmDiscard: 'Confirm discard (destructive)',
|
||||
amend: 'Amend last commit',
|
||||
amendPlaceholder: 'New message (leave empty to keep the previous one)',
|
||||
messagePlaceholder: 'Commit message…',
|
||||
commit: 'Commit',
|
||||
push: 'Push',
|
||||
fetch: 'Fetch',
|
||||
pull: 'Pull (fast-forward)',
|
||||
pullRebase: 'Pull --rebase',
|
||||
alreadyPushed: 'Cannot amend: this commit was already pushed.',
|
||||
},
|
||||
terminal: {
|
||||
observer: 'observer (read-only)',
|
||||
sessionEnded: 'Session ended',
|
||||
|
||||
@@ -237,6 +237,25 @@ const fr: typeof en = {
|
||||
unstaged: 'non indexé',
|
||||
conflicts: 'conflits',
|
||||
},
|
||||
commit: {
|
||||
staged: 'Indexés',
|
||||
changes: 'Changements',
|
||||
stage: 'Indexer',
|
||||
unstage: 'Désindexer',
|
||||
stageAll: 'Tout indexer',
|
||||
unstageAll: 'Tout désindexer',
|
||||
discard: 'Abandonner',
|
||||
confirmDiscard: 'Confirmer l’abandon (destructif)',
|
||||
amend: 'Amender le dernier commit',
|
||||
amendPlaceholder: 'Nouveau message (vide = conserver le précédent)',
|
||||
messagePlaceholder: 'Message de commit…',
|
||||
commit: 'Commit',
|
||||
push: 'Push',
|
||||
fetch: 'Fetch',
|
||||
pull: 'Pull (fast-forward)',
|
||||
pullRebase: 'Pull --rebase',
|
||||
alreadyPushed: 'Amend impossible : ce commit a déjà été poussé.',
|
||||
},
|
||||
terminal: {
|
||||
observer: 'observateur (lecture seule)',
|
||||
sessionEnded: 'Session terminée',
|
||||
|
||||
Reference in New Issue
Block a user