Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

For large features usually multiple people need to collaborate on a separate branch. Here is where git shines and the distributed model kicks in:
1. A JIRA is created for a large feature.
2. The team (not necessarily having a committer) creates a remote repository which itself may have many branches with the master branch having all the work agreed upon and merged (actually, rebased)
3. The collaboration for this branch happens in the JIRA including discussions, comments, and even links to the commits etc ...
4. A request is made to the project, to make a pull request from the repository after reaching a certain milestone with consensus from the community of course.
5. Here, for extra safety, the branch model may have a trunk and a develop branches. Everything is pulled to the develop branch and trickles down to the master branch after thorough and proper testing.

The above workflow can also adhere to the now famous Vincent Driessen git branching model found here -> http://nvie.com/posts/a-successful-git-branching-model/

[Swapnil M Mane] - Recently (29 April 2019) the Apache® Software Foundation Expands Infrastructure with GitHub Integration. This will allow projects to use GitHub's excellent tools.

https://blogs.apache.org/foundation/entry/the-apache-software-foundation-expands

[Swapnil M Mane] - I think, we can also allow our contributors to create pull request (PR) for Small Features / Bug Fixes and this MR can be mentioned in the JIRA ticket.

In GitHub, contributors can easily fork the project, do the respective changes in their repository and submit pull request (PR) to merge their code change.

Buildbot configuration with Git (Build Scripts)

...