I just wrote this as a response to a question on
https://github.com/matplotlib/matplotlib/pull/32
about how to merge to v1.0.x and master.
Please feel free to comment or ask for details.
···
------------------------------------------------------------------------------
First make sure your v1.0.x branch is fresh:
git checkout v1.0.x
git pull --ff-only upstream v1.0.x
(This assumes an "upstream" remote pointing to
`git://github.com/matplotlib/matplotlib.git`.) Then merge your pull
request and run the test suite (I don't know if this should be
mandatory):
git merge bugfix/legend_windowcall # replace by whatever you are merging
python setup.py install # or however you compile things to run the tests
./tests.py # all new test runner script!
If everything is fine, push:
git push git@...679...:matplotlib/matplotlib.git v1.0.x
Next do the same with master, this time merging v1.0.x:
git checkout master
git pull --ff-only upstream master
git merge v1.0.x
python setup.py install
./tests.py
git push git@...679...:matplotlib/matplotlib.git master
------------------------------------------------------------------------------
There are multiple ways things could go wrong, which will need
instructions in the devel docs. These are the cases I can think of:
1. git pull --ff-only fails because fast-forward is impossible
(you have commits on an integration branch that don't belong there)
2. the merge has conflicts
3. the tests fail (also a kind of merge conflict, assuming the tests
passed before)
4. the push fails because fast-forward is impossible (someone has
pushed in the meantime)
5. v1.0.x doesn't merge cleanly into master
--
Jouni K. Sepp�nen
http://www.iki.fi/jks