Hacking:Making pull requests: Difference between revisions

Content added Content deleted
No edit summary
No edit summary
Line 1: Line 1:
__TOC__
This page describes how to create a pull request. We highly recommend you to read this page before you will decide to send us your changes.
This page describes how to create a pull request. We highly recommend you to read this page before you will decide to send us your changes.


'''Note:''' this is not a mercurial tutorial. For more in formation about mercurial see our page about [[Hacking:Tools#Mercurial|Hacking:Tools]].
'''Note:''' this is not a mercurial tutorial. For more in formation about mercurial see our page about [[Hacking:Tools#Mercurial|Hacking:Tools]].


== Branch model ==
First you should know little bit about our workflow. Right now we work with several [https://www.mercurial-scm.org/wiki/NamedBranches named branches].
First you should know little bit about our workflow. Right now we work with several [https://www.mercurial-scm.org/wiki/NamedBranches named branches].


Line 10: Line 12:
* ''release'' - used for feature freeze state before the next major release. And for preparing the next minor release.
* ''release'' - used for feature freeze state before the next major release. And for preparing the next minor release.


These are the main branches you should know about. There are several long term task specific branches in repository too. But we will not discuss them in this document.
These are the main branches you should know about. There are several long term task specific branches in repository too. But we will not discuss them in this document.


== Working with feature ==
* Make a feature step by step and save your progress.
* Make commit only if you have finished a step. Don't need to make commit for unfinished step today. You can continue tomorrow.
* Each commit should be small as possible and contain one logical step of developing a feature. This will help us better understand your code. Sometimes we see changes per each commit separately.
* Compiler should successfully build each commit you made.
* Make all your commits in feature branch. This mean all your changes in your local repository will be only in feature branch. When you will decide that all were done create a pull request. Merge your feature branch with our develop.
* Don't forget each day sync your repository and ours and merge new code in develop -> to your feature branch. Fix all possible merge conflicts.
* You can push your feature branch to bitbucket. This will help us watch your progress and left comments. We recommend don't hide your code until the end.

== General recommendations ==
There are several things you should know for successful creating a pull request.
There are several things you should know for successful creating a pull request.
[[File:Workflow mercurial.png|center]]
[[File:Workflow mercurial.png|center]]