99 Reasons for Stash as Git-Repository-Manager

Within software development there are distributed version control systems, with especially git currently most popular. More and more teams are recognizing the advantages of DVCS and migrate from central version management. The market offers numerous products which enable teams of developers to manage their git repositories. All have their advantages. The most mature and most feature rich solution for an enterprise is in our opinion Atlassian’s Git repository management system Stash.

We have collected 99 reasons, which all are argue for Stash and show why it is reasonable to test Stash, regardless whether a transition to Stash in the planning or has been started. 99 reasons – none longer than a Twitter tweet.

99 reasons for Atlassian Stash

  1. Stash is Atlassian’s mature Git repository manager for enterprise development teams.
  2. Stash offers enterprise teams the possibility to manage the whole distributed and growing Code-Basis.
  3. Stash unites all Git respositories of the business, developers always find the last official project version.
  4. Stash supports growing Git respositories within the secure infrastructure behind the Firewall.
  5. Stash can be used in every enterprise environment. 
  6. Stash does not forces the administrators to use pre-packaged applicatons and lose control.
  7. Stash runs secure on its own severs with its own enterprise data bases.
  8. Stash supports Windows as well as Linux and MacOS X.
  9. It is easy to switch from Stash’s integrated data base to your own specific infrastucture.
  10. Stash supports all essential data bases: MySQL, Oracle, PostgreSQL, MS SQL Server.
  11. Stash allows LDAP und Crowd support and is prepared for any business requirements. 
  12. Thanks to DIY backups the team takes control of the backup environment and tools.
  13. Project leads are able to control acess by the right user to the right code within Stash at all times.
  14. Stash offers permissions not only on project and repo level, but also for the branch level.
  15. Permissions within Stash can be assigned granual at user and group level. 
  16. Especially within the big projects or the ones that involves a third party, the permission concept of Stash is particulary strong.
  17. Public access allows anonymous users to browse specific respositories or entire Stash projects.  
  18. Stash generates audit logs and tracks all activites in all repos and changes on project as well as system level.
  19. The audit system offers Stash admins transparency and visability.
  20. Besides HTTPS Stash also supports SSH. Developers are able to manage their own SSH key and add as many additional as they like.
  21. Stash admins can approve and revoke SSH keys for every user.
  22. Stash allows to create read/write and read-only SSH keys on project and repo level.
  23. The data search in Stash allows to find all data files in one repo without having to search for the source code.
  24. Thanks to flexible filters the search for branches in Stash is happening within the blink of an eye.
  25. Due to the repository quick search with autocomplete, all repos are found easily in Stash.
  26. Stash provides the integration of best practices of branch-based development with the individual workflow of the development team.
  27. The branching model of Stash is adjustable, the path from branch creation to merging is seamless.  
  28. The branch overview in Stash shows all important Info: branch progress, pull request info, branch search.
  29. Stash offers a list with all existing branches at a glance and options of direct interaction per click.
  30. The status of each branch is easily compared to the status of any source branch.
  31. Stash user have the possibility to delete a feature or hotfix branch after the merge.
  32. The branching model of Stash supports automated merges up to the development branch.
  33. Automated merging in Stash means less error-prone manual maintainance by the team. 
  34. Forks in Stash provide a workflow to add code to a repo for which there is no write access. 
  35. A fork generates a copy of the repo, that is tracked by Stash and independently of the original repository modified.
  36. In Stash every repo can be forked into every project, that the developer has admin access to.
  37. Stash supports personal forks for that other developers can get admin rights.
  38. Private repos give developers the freedom to promote innovations. 
  39. At activated fork synchronization within a forked stash repo, this will be automatically synchronized with the original repo.
  40. Fork synchronization: If someone pushes a pull request or merges, the changes will be duplicated in the fork.  
  41. Stash offers the option to create a private repository that does not coheres with other projects.
  42. Private repositories in Stash can be open (or secured)  at will.
  43. Stash supports pull requests for efficient discussions about code changes.
  44. Stash tracks the whole acitivity within a pull request. Diffs, replies, and new commits to the branch can be commented.
  45. Diffs within pull requests highlight the changes that would result out of the merge.
  46. Besides the classical diff view, Stash provides comfortable side-by-side diffs.
  47. Hunk maps in the side-by-side diffs of Stash help to navigate towards changes within big files.
  48. Diffs in Stash allow inline comments and highlight the differences on character level.
  49. The Build Status API of Stash allows a build server to deliver build details in a pull request.
  50. In Stash developers can set checks to control when a pull request can be merged.
  51. Developers receive automatic notifications at important activities for all of their relevant pull requests by Stash.
  52. The inbox in Stash shows all pull requests that are waiting to be processed by the user – across projects and repos.
  53. The pull request inbox in Stash displays also all pull requests that were created by a user and remain still open.
  54. The destination branch for an active pull request can be changed easily in Stash. 
  55. Git hooks enable the team to adjust workflows to all requirements.
  56. Admins can activate and configurate hooks for each repo directly in Stash without having to install them in the file system.
  57. Developers can just write their own hooks. Stash manages persistence, packaging and per-repository configuration.
  58.  Stash makes it easy to identify Git submodules through the user interface.
  59. @ mentions in Stash allow team members to be easily involved in discussions.
  60. Stash offers markdown for comments. 
  61. Commit comments: In Stash, every commit can be commented.
  62. Stash allows every pull request or each file in a commit that has been changed, to be commented.
  63. Stash offers comment counters for pull requests and commits. These counters show what currently moves the team most.
  64. Integration of tracking system and repository manager: JIRA and Stash work seamlessly together.
  65. The integration of Stash with other Atlassian tools prevents troublesome and inefficient context switching.
  66. Stash tracks all JIRA issues that are linked with commits. 
  67. JIRA issue keys that are mentioned in comments or pull requests are automatically linked by Stash.
  68. Issue links in Stash provide transparency of the tickets displayed in JIRA up to the regarding source code.
  69. Stash offers the option to transition linked JIRA issues directly from within Stash.  
  70. Stash supports in regard of issue transitions also individual JIRA workflows.
  71. The development panel in a JIRA issue presents Stash info at a central point: branches, commits, pull requests, builds.
  72. From within a JIRA issue it is possible for a developer to create a branch in Stash only by click.
  73. Stash proposes out of which code line a branch should be created and which prefix should indicate its purpose.
  74. Stash copies the JIRA issue key into the branch name; the team will know which issues are actively developed. 
  75. Stash provides info on commits and pull requests back to JIRA, Stakeholders find updates direct within the issue.
  76. Stash displays which JIRA issues are linked to commits and pull requests.
  77. Stash can be connected to several existing JIRA installations. 
  78. Users can easily navigate directly in the header between Stash and other Atlassian tools including SSO. 
  79. Any application can be made accessible by the application navigator in Stash.
  80. Atlassian’s integration server Bamboo enables direct access to Stash repos. 
  81. Even if the Bamboo user is not an admin or contributor to a Stash repo, they can still include it in their builds.
  82. Stash can be extended with numerous third-party add-ons or individual plugins.
  83. Stash comes with a comprehensive REST API for individual adjustments.
  84. The plugin framework of Stash is just as powerful as already known by JIRA and Confluence.
  85. Thanks to the REST API of Stash plugin elements can be integrated into the Stash interface.
  86. Stash is open source for customers. They can enhance the system if needed.
  87. Stash supports individual avatars for projects. These can be found and identified easier on the dashboard.
  88. The user profile of a Stash user exhibits all important information: projects, repos and personal repositories, forks.
  89. In Stash users can upload random locally stored pictures on to their profile = more joy of use.
  90. Teams that want to migrate from SVN to Git are provided by Stash with a mature environment for a seamless transition.
  91. Stash supports in a flexible manner all thought of Git workflows, easy up to highly specialised.
  92. Even the centralized SVN workflow can be portrayed by Stash without problems.
  93. Stash is progressing fast. Bigger releases are happening every few weeks. 
  94. The Stash inerface is clean, intuitiv and user friendly.
  95. The great usability of Stash leads to more effectiveness and efficiency in development teams.
  96. Stash ist extremely scalable and works well in smaller teams as well as in big projects.
  97. A rollout from an evaluation team to dozens and hundreds of developers is possible with Stash without any complications.
  98. Stash is lean and performant. Teams can focus on coding instead on administrative issues.
  99. Stash enables development teams to be fit for the DVCS standard of the next years: Git.

Let’s leave it with this for now. You see: Stash not only offers an enormous amount of features, but also answers all requirements for security, flexibility and options of incorporation of other Atlassian products for development teams. Businesses, that objectively evaluate professional Git repository management solutions, cannot avoid to thoroughly test Stash. We would like to assist you with this.

Diesen Beitrag auf Deutsch lesen.

Additional information:

Real integration: The interaction of JIRA, Stash and Bamboo
Interview: Advantages of Git within the software development and the possibilities of Stash
SWIFT: The Easiest and Fastet Way to Try Confluence, JIRA or Stash

Share article:Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someonePrint this page