Git, Subversion, Mercurial and Bazaar
Create local repositories
Provision repository storage and register it with a Redmine project from the familiar repository settings screen.
Create a managed repository
- Open Project → Settings → Repositories.
- Select the configured local SCM type.
- Choose an identifier and confirm the generated repository path.
- Select Create new local repository.
The default repository name follows the project identifier. Git repositories are normally bare repositories with a .git suffix; Subversion repositories are created with svnadmin create.


Path and deletion safety
Managed paths
- Exactly one direct child beneath the configured root
- No traversal or nested unapproved paths
- Validated before create, rename or delete
Controlled deletion
Administrators choose whether to remove only the Redmine registration or also the managed filesystem repository. An incomplete filesystem deletion prevents removal of the database record.
Configure provider roots
Each enabled provider needs an absolute storage root and its command-line client. The Redmine application user must be able to create repositories beneath that root. Displayed repository URLs are configured independently from filesystem paths.
production:
git:
path: /var/lib/redmine/git
git: /usr/bin/git
options:
bare: true
Use the sample config/scm.yml included with the plugin as the authoritative starting point for every provider. Configure only options supported by the selected SCM.
Automatic project creation
Set auto_create: true to offer repository creation while a project is created. Use auto_create: force only when every project with the Repository module must select a configured SCM. Automatic creation still applies permissions, provider limits, writable-root checks, and lifecycle validation.
Project identifier changes
A repository created and managed by SCM Creator can be renamed after its project identifier changes only while it remains a validated direct child of the configured provider root. Existing unmanaged or external repositories are not moved automatically.