Source Control Management/6.1
This page in other versions: master
FusionForge provides a feature to integrate version control systems such as Subversion, Git, Bazaar, even CVS, and others. This integration relies on the plugin system that FusionForge proposes by default.
- main repository per project
- second repositories per project for Git, Mercurial
- personal repository per project for Git
- Simultaneous access protocols; e.g: ssh & smart http for Git, dav & ssh for SVN, ...
- Role Based Access Control integration
- Web browsing by integration of standard open source tools (Git => gitweb, etc.)
- Reporting & statistics
- Nightly snapshot archive
- Multiple SCM type (Git + Subversion + Mercurial + CVS.) simultaneously
- Project Homepage widgets
- User homepage widgets
Supported Version Control System
See each plugin for detailled features.
- scmhook provides hooks management for Git, Subversion & Mercurial
Each SCM plugin provides his own set of widgets. Still SCM core feature provides generic widgets.
User oriented widgets
Project oriented widgets
To enable this system at forge level, the configuration flag use_scm must be set to yes. Per project, the system can be enable/disable through the Project admin tab.
By setting the configuration flag allow_multiple_scm flag to on (default is off), a project can use any SCM engine simultaneously, e.g: using SVN, Git, Hg or CVS in parallel.
Relying on RBAC, SCM permissions are:
- No Access: user has no access to Source Code Management tool and any information.
- Read only: user can browse, retrive information from Source Code Management Tool. User can create personal repository if SCM tool supports such feature.
- Commit access: user has full access to data store into Source Code Management.
- Project administration: the permission is set at project level. It provides full commit access and administrative permission to create/delete repositories and other configuration such as hook activation.
Permission apply to any repository created within the project.
The SCM homepage is divided into 2 main areas:
- the left side of the page is dedicated to different information to get retrieve as user (member of the project) or as anonymous (basically anyone if the project provides anonymous access to SCM) the source code.
Online browser link is available at bottom left.
Direct access to documentation of the (D)VCS tool is at top left.
- the right side of the page presents some basic information about repository history.
- at top of the page, if your profile has administrative rights, a submenu gives you access to "Reporting" & "Administration", respectively reporting activity (commits over time, last 30 days, last 3 months, last year), administration actions such as hooks activation, create/delete second repositories.
Based on tooling integration.
- Scmgit: Gitweb
- Scmsvn: viewvc
- Scmhg: hgweb
- Scmcvs: viewvc
3 reports available:
- Commits over time
a overall total of commits per month since the start of the project
- Commits last 30 days
per user commits during the last 30 days.
- Commits last 365 days
per user commits during the last 365 days.
Access to this page requires Project administration" permissions.