chore: Add local development docs for environments feature (#20165)

This commit is contained in:
Konstantin Tieber 2025-09-30 09:44:09 +02:00 committed by GitHub
parent c62892ce62
commit 0a7a638422
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 29 additions and 0 deletions

View File

@ -0,0 +1,20 @@
## Environments
Environments enable enterprise users of n8n to effectively manage multiple deployments of n8n by synchronizing them using a shared git repostiory.
[Link to docs](https://docs.n8n.io/source-control-environments/understand/environments/)
### Local development
When using the "usual" `pnpm run dev` scripts to start a local n8n instance, your local git settings and credentials will be picked up by the git repository that is cloned within n8n.
This is why you should start n8n in a docker container when doing any kind of manual testing of this feature.
Building a local docker image from your local checkout:
`pnpm build:docker`
Starting a local container using that image:
`pnpm --filter n8n-containers stack:enterprise`
The development experience of running n8n from source in a docker container still leaves a lot to be desired (lots of waiting for building and running the container).
We should improve on this in the future.

View File

@ -27,6 +27,15 @@ import { sourceControlFoldersExistCheck } from './source-control-helper.ee';
import { SourceControlPreferencesService } from './source-control-preferences.service.ee';
import type { SourceControlPreferences } from './types/source-control-preferences';
/**
* Service for interacting with locally cloned git repositories.
*
* For local development:
* Keep in mind that when running n8n locally using a pnpm dev script,
* the git credentials on your machine will be picked up by the git client
* used in this service.
* See the README for the environments feature for instructions to run n8n in a docker container.
*/
@Service()
export class SourceControlGitService {
git: SimpleGit | null = null;