Atlassian has announced its newest release of Stash, the onsite Git repository management system. The system exists to help programming teams track ideas (specifications and requirements), activity (work and tasks), and code — and now boasts improved performance and scale for large distributed teams.
Stash's new enterprise functionality includes branch permissions that allow development teams to specify and manage an individual's or a team's access control to code.
All code developed separately on a branch can be properly tested and reviewed before being merged into source. The new team collaboration features include @mentions and Markdown support. This function aims to bring new team members into a code discussion and provide greater context for richer discussions and communications.
Decentralized Version Control Systems Rule OK
"Our research strongly suggests that decentralized version control systems generally (and Git specifically) are supplanting the centralized systems that preceded them," said Stephen O'Grady, principal analyst at RedMonk. "Employers that wish to attract and retain technical talent would do well to acknowledge the market's preference for Git, as well as the technical advantages behind it, when selecting a VCS."
Atlassian points out that Git makes it easy for "any developer" to contribute to code, but it comes at the price of control — especially in geographically dispersed corporate environments. As corporate projects grow, so do the number of contributors, stakeholders, and code repositories those teams are contributing to.
"With all these moving parts, development teams need a central place for their source, and a process to keep it organized as it expands," suggests the company.
Stash claims to offer fine-grained access control over repositories and branches to help ensure quality code development. For example, depending on the needs of the team, write access can be restricted to certain branches, or based on users, groups, or specific branch names. With Stash, pattern restrictions can also be used to prevent branch deletion or to limit branch creation.