Synchronizing issues and Git commits
In the normal course of writing software, developers will normally move a story or task to an In Progress state, do the actual work of writing the code, commit the changes to a source repository such as Bitbucket or GitHub, and then switch back to Jira to move the story or task to the next status in the workflow.
All of this manual work requires unnecessary context switching, and because the process requires the developer to remember to switch between the various tools, it is very likely that sometimes issues are not updated, which makes it harder to track actual progress on the project.
Jira has, for some time, had the ability to integrate with tools such as Bitbucket and GitHub by allowing administrators to configure the underlying Jira workflows with triggers on various transitions.
While this approach does allow for automation of the process and frees up the developer from having to manually update their task statuses, it is limited...