Broadly used collaborative development environments include GitHub, GitLab, BitBucket, and Azure DevOps Server.
Some collaborative development environments are offered as cloud services, others may be installed on-premises, or both. Commonly offered capabilities include:
- Version control
- Issue and progress tracking
- Search, notifications, discussion
- Continuous integration
- A range of developer tools as (third-party) plugins
Collaborative development environments have been developed for, and gained wide-spread adoption by, “traditional” software development teams.
More recently, collaborative development environments have been develop with capabilities specifically geared towards data-intensive tasks such as data science and machine learning:
- storage and versioning of large data sets
- experiment management
- versioning and deployment of models
Consistent use of a collaborative development environment implies that all team members make use of the environment for all their tasks and that they follow the same conventions in cases where similar tasks can possibly be carried out in different ways in the environment.