[Scummvm-devel] Merged branch-1-3-0 into master

Max Horn max at quendi.de
Wed Jun 1 15:42:20 CEST 2011


Hi there,

to shortcut the ongoing discussion  a little bit (I still need to catch up with it, actually): As a proof of concept, I just merged branch-1-3-0 into master. The resulting merge commit is here: 
  https://github.com/scummvm/scummvm/commit/a4610df4825a89ceda39bf1156d1b97a37cceac8

I *hope* that I didn't mess up anything this time around, I really tried hard, but please everybody review and test this.

What I did was this:
1) Made sure I had a checkout of the very latest master:
   git co master && git pull

2) Merged the branch:
  git merge branch-1-3-0

3) This resulted in tons of conflicts, which I resolved one by one as follows:

First I removed the various dists/msvc*/*.vscproj files which were added on the release branch but which we don't want on master. Likewise, I canceled the changes to gui/themes/translations.dat because I could not inspect them (I assume we should simply regenerate this file on master now).
   
The remaining conflicts in dists/ were due to version string mismatches. They were resolved by running
   devtools/update-version.pl 1 4 0 git
After that, "git diff dists/" revealed no diffs, so I could do "git add dists" to resolve them.

The differences in devtools were all unwanted, so I just did removed them using "git reset"

The remaining conflicts were usually small, so I reviewed and resolved them one by one.

For the PS2 and Dreamcast ports, there were changes that looked like they were meant only for the release builds. I moved this into commented out lines, with a comment "For release builds:" next to them.

The Samsung TV, PS2 and Nintendo DS port had changes that looked "important" for future release, and they are now all in master, too.

There were quite some conflicts due to my configure rework on master, but resolving them was pretty much straight forward.

On the matter of "wrong branch-only emergency fixes", there was the Tinsel fix this time. The merge diff immediately showed it, and I was able to remove it, so no traces of that should have made it into master.

4) Once all this was done, I was able to finalize the merge commit, adding a brief note on hat I did, and then pushed it out to our main repository.


Overall, this merge required a bit of experience with git and maybe ScummVM itself, but otherwise was pretty much straightforward. If an experienced team member does it, I foresee no problems with that, including the matter of "branch-only hotfixes" -- *assuming* everything actually *did* go fine, that is. Maybe I overlooked some serious issues, but I am pretty sure we'll quickly find out thanks to the ever-watchful eyes of our team members (for which I am *very* grateful, by the way).


Cheers,
Max



More information about the Scummvm-devel mailing list