Understand the basics

Not sure what a pull request is, or how to submit one? Take a look at GitHub's excellent help documentation first.

Search Issues first; create an issue if necessary

Is there already an issue that addresses your concern? Do a bit of searching in our issue tracker to see if you can find something similar. If you do not find something similar, please create a new issue before submitting a pull request unless the change is truly trivial -- for example: typo fixes, removing compiler warnings, etc.

Discuss non-trivial contribution ideas with the community

If you're considering anything more than correcting a typo or fixing a minor bug, please discuss it on the mailing list before submitting a pull request. We're happy to provide guidance, but please spend an hour or two researching the subject on your own.

Create a Branch

Branch from develop

Develop currently represents work toward Apache Fineract 1.0.0. Please submit all pull requests there, even bug fixes and minor improvements.

git checkout develop

Use short branch names

Branches used when submitting pull requests should preferably be named according to issues prefixed FINERACT followed by a dash and the issue number, e.g. 'FINERACT-1234'. This is important, because branch names show up in the merge commits that result from accepting pull requests and should be as expressive and concise as possible.

git checkout -b [topic]

Pull in changes

Keep up to date

There will be development changes to both repositories almost every day for the foreseeable future so its important to keep your fork of the software up to date with the latest changes.

To pull in upstream changes from repository you forked:

git checkout develop
git fetch upstream
git merge upstream/develop

You should not have any local changes on your develop branch, if you do, use rebase!

Once you have pulled all latest changes and your build was successful, push the just merged changes to the develop branch on your fork.

git push origin develop

Rebasing your work

After you pulled all changes from upstream you need to rebase your topic branch with the latest code.

git checkout [topic]
git rebase develop

If you are ready push your topic branch to your GitHub account:

git push origin [topic]
  • No labels