feat: Version control mvp (#6271)
* implement basic git service * cleanup connected prop * add skeleton of git functions * initial import/export setup * split out export service * refactor and improve export * begin import * more commands and basic import * clean up imports with transactions * work folder import functions * reintroduce versionid * add missing import to pull workfolder * add get-status endpoint * add cleanup to disconnect * add initRepo options * add more checks and cleanup * minor cleanup * refactor prefs * fix server.ts * fix sending deleted files * rename files to ee * add variable override and fix critical cred import bug * fix mkdir race condition * make initRepo default to true * fix front back integration * improve connect flow * add comment to generated ssh key * fix(editor): use useToast composable * fix buttons size * commenting out repo init for now * fix(editor): update UI logic * fix(editor): remove console.log * fix(editor): remove unused ref * adjust endpoints for improved UI * fix(editor): add push and pull buttons * keep or not ssh key * switching file name to id * fix(editor): add success messages, fix save button * fixed faulty diff preventing pull * fix build * fix(editor): adding loader to VC components * removing duplicate exports * improve conflict finding on push pull * manage pull conflict * alternate push pull * fix pull confirmation * fix rm and credential export/import * switch to alternative pull implementation * fix initial commit * fix(editor): subscribing to VC store action to refresh lists * fix(editor): wrap VC store actions with try * feat: add fine-grained file selection for push action * fix: close modal after successful push * fix(editor): VC preferences validation * fix confirm * fix: update endpoint to /get-status * feat: update pull modal override changes message * fix missing wf error * undo * removing connect endpoint * fix(editor): add button titles * fix(editor): cleaning up store action * add version-control/set-read-only protection * fix(editor): adding set branch readonly * fix(editor): remove Push button if branch set to readonly * fix(editor): fix some styles * fix(editor): remove duplicate and delete actions in WF list when branch is readonly * fix: load status before opening selective push modal * fix(editor): extend readonly logic * add cleanup after failed initRepo * fix deleted files crashing get-status * fix n8n-checkbox in staging dialog * fix(editor): fix loading * fix(editor): resize buttons * fix(editor): fix translation * fix(editor): fix copy text size * fix(editor): fix copy text size * fix(editor): add disconnection confirmation * fix(editor): add disconnection confirmation * fix(editor): set large buttons * add public api Pull endpoint * feat: add refresh ssh key * return prefs when new keys are generated * fix(editor): adding readOnly mode to main header * fix(editor): adding readOnly mode to workflow settings * improve credential owner import * add middleware to endpoints * improve public api error/doc * do not create branch if one already exists * update wordings for connect toasts * fix(editor): updating and separating readonly modes * fix(editor): fix readonly mode in WF list * fix(editor): disable elements dragging on canvas in readonly mode (WIP: not working when NodeView page is loaded first) * fix(editor): fix canvas draggables in readonly env * fix(editor): remove unused variables * fix(editor): hide actions in node connections when readonly * fix(editor): hide actions in node connections when readonly * fix(editor): disable Save button when readonly * fix(editor): disable Save settings if no branch is selected * fix(editor): lint fix * fix(editor): update snapshots * fix(editor): replace Loading... text * fix(editor): reset Loading... text * reset branchname on disconnect * fix(editor): adding some translations * fix(editor): fix unit test * fix(editor): fix loading * fix(editor): set settings saved message * fix(editor): update connection flag * fix branchName not returning after connect * temporary (but still breaking) fix for postgres * fix(editor): adding tooltip to Push/Pull buttons when they're collapsed * fix(editor): enabled activator in readonly mode * fix test * fix(editor): disabling new item addition for workflows in readonly mode * fix(editor): modify Pull/Push button tooltips * do not commit empty variables file --------- Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com> Co-authored-by: Romain Minaud <romain.minaud@gmail.com> Co-authored-by: Alex Grozav <alex@grozav.com>
This commit is contained in:
@@ -1339,13 +1339,19 @@
|
||||
"settings.versionControl.repoUrl": "Git repository URL (SSH)",
|
||||
"settings.versionControl.repoUrlPlaceholder": "e.g. git@github.com:my-team/my-repository",
|
||||
"settings.versionControl.repoUrlDescription": "The SSH url of your Git repository",
|
||||
"settings.versionControl.repoUrlInvalid": "The Git repository URL is not valid",
|
||||
"settings.versionControl.authorName": "Commit author name",
|
||||
"settings.versionControl.authorEmail": "Commit author email",
|
||||
"settings.versionControl.authorEmailInvalid": "The provided email is not correct",
|
||||
"settings.versionControl.sshKey": "SSH Key",
|
||||
"settings.versionControl.sshKeyDescription": "Paste the SSH key in yout git repository settings. {link}.",
|
||||
"settings.versionControl.sshKeyDescriptionLink": "More info.",
|
||||
"settings.versionControl.sshKeyDescription": "Paste the SSH key in your git repository settings. {link}.",
|
||||
"settings.versionControl.sshKeyDescriptionLink": "More info",
|
||||
"settings.versionControl.refreshSshKey": "Refresh Key",
|
||||
"settings.versionControl.refreshSshKey.successful.title": "SSH Key refreshed successfully",
|
||||
"settings.versionControl.refreshSshKey.error.title": "SSH Key refresh failed",
|
||||
"settings.versionControl.button.continue": "Continue",
|
||||
"settings.versionControl.button.connect": "Connect",
|
||||
"settings.versionControl.button.disconnect": "Disconnect Git",
|
||||
"settings.versionControl.button.save": "Save settings",
|
||||
"settings.versionControl.instanceSettings": "Instance settings",
|
||||
"settings.versionControl.branches": "Branch connected to this n8n instance",
|
||||
@@ -1359,6 +1365,44 @@
|
||||
"settings.versionControl.sync.prompt.description": "All the changes on your n8n instances will be synced with branch {branch} on the remote git repository. The following git sequence will be executed: pull > commit > push.",
|
||||
"settings.versionControl.sync.prompt.placeholder": "Commit message",
|
||||
"settings.versionControl.sync.prompt.error": "Please enter a commit message",
|
||||
"settings.versionControl.button.push": "Push",
|
||||
"settings.versionControl.button.pull": "Pull",
|
||||
"settings.versionControl.modals.push.title": "Commit and push changes",
|
||||
"settings.versionControl.modals.push.description": "Select the files you want to stage in your commit and add a commit message. ",
|
||||
"settings.versionControl.modals.push.description.workflows": "Since you are on the Workflows page, the modified workflow files have been pre-selected for you.",
|
||||
"settings.versionControl.modals.push.description.workflow": "Since you are currently editing a Workflow, the modified workflow file has been pre-selected for you.",
|
||||
"settings.versionControl.modals.push.description.credentials": "Since you are on the Credentials page, the modified credential files have been pre-selected for you.",
|
||||
"settings.versionControl.modals.push.description.learnMore": "Learn more",
|
||||
"settings.versionControl.modals.push.description.learnMore.url": "https://n8n.io/docs",
|
||||
"settings.versionControl.modals.push.filesToCommit": "Files to commit",
|
||||
"settings.versionControl.modals.push.everythingIsUpToDate": "Everything is up to date",
|
||||
"settings.versionControl.modals.push.commitMessage": "Commit message",
|
||||
"settings.versionControl.modals.push.commitMessage.placeholder": "e.g. My commit",
|
||||
"settings.versionControl.modals.push.buttons.cancel": "Cancel",
|
||||
"settings.versionControl.modals.push.buttons.save": "Commit and Push",
|
||||
"settings.versionControl.modals.push.success.title": "Pushed successfully",
|
||||
"settings.versionControl.modals.push.success.description": "The files you selected were committed and pushed to the remote repository",
|
||||
"settings.versionControl.modals.pull.title": "Override local changes",
|
||||
"settings.versionControl.modals.pull.description": "Some remote changes are going to override some of your local changes. Are you sure you want to continue?",
|
||||
"settings.versionControl.modals.pull.buttons.cancel": "@:_reusableBaseText.cancel",
|
||||
"settings.versionControl.modals.pull.buttons.save": "Pull and override",
|
||||
"settings.versionControl.modals.disconnect.title": "Disconnect Git repository",
|
||||
"settings.versionControl.modals.disconnect.message": "Please confirm you want to disconnect this n8n instance from the Git repository",
|
||||
"settings.versionControl.modals.disconnect.confirm": "Disconnect Git",
|
||||
"settings.versionControl.modals.disconnect.cancel": "@:_reusableBaseText.cancel",
|
||||
"settings.versionControl.modals.refreshSshKey.title": "Refresh SSH Key",
|
||||
"settings.versionControl.modals.refreshSshKey.message": "This will delete the current SSH key and create a new one. You will not be able to authenticate with the current key anymore.",
|
||||
"settings.versionControl.modals.refreshSshKey.cancel": "Cancel",
|
||||
"settings.versionControl.modals.refreshSshKey.confirm": "Refresh key",
|
||||
"settings.versionControl.toast.connected.title": "Git repository connected",
|
||||
"settings.versionControl.toast.connected.message": "Select the branch to complete the configuration",
|
||||
"settings.versionControl.toast.connected.error": "Error connecting to Git",
|
||||
"settings.versionControl.toast.disconnected.title": "Git repository disconnected",
|
||||
"settings.versionControl.toast.disconnected.message": "You can no longer sync your instance with the remote repository",
|
||||
"settings.versionControl.toast.disconnected.error": "Error disconnecting from Git",
|
||||
"settings.versionControl.loading.pull": "Pulling from remote",
|
||||
"settings.versionControl.loading.push": "Pushing to remote",
|
||||
"settings.versionControl.saved.title": "Settings successfully saved",
|
||||
"showMessage.cancel": "@:_reusableBaseText.cancel",
|
||||
"showMessage.ok": "OK",
|
||||
"showMessage.showDetails": "Show Details",
|
||||
|
||||
Reference in New Issue
Block a user