Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: I am back and will try to merge the GitHub fork back into vanilla LCS  (Read 1606 times)

Liberal Elitist

  • Bay Watcher
  • I'm more liberal than you are!
    • View Profile
    • The Liberal Crime Squad wiki

OK, I went on vacation in late September and returned in mid-October. I haven't really been on these forums since then. Since I spent the summer as basically a go-to person who was active fixing bugs and adding features to the Liberal Crime Squad game, and I've only made one code commit since coming back from vacation (a simple code cleanup commit that didn't actually change anything the game did, just made the code a little simpler and more concise after someone else made a commit they said was to fix compiler warnings on their compiler), well I've been pretty inactive, even though I said back in September that I'd be back in mid-October actively fixing bugs in the game.

Anyway I'm going to try and be more active again, and try and fix bugs people report in Liberal Crime Squad, and I am also planning on merging the GitHub project into the SourceForge project. In case you didn't know, the GitHub project happened earlier this year and it was to fix things in the game, done by 2 Linux users who use Git instead of SVN, and it was a "fork" of Liberal Crime Squad, with the main project still on SourceForge, still using SVN, and the main project on SourceForge is still actively being updated now whereas the GitHub project seems to be abandoned at this point, being inactive for 7 months now, last updated May 20th this year. But the GitHub project had 505 commits (actually only 42 of them were done on GitHub, the others were from SVN revisions). At least SOME of those commits probably fixed bugs in the game or added useful new features, which ought to be merged back into the main, actively developed version of the game on SourceForge. I already successfully merged all of the bugfixes that the Terra Vitae mod had in it back into the vanilla game on SourceForge back in September, so I know how to do it, so it will be easier to merge a fork the 2nd time. Perhaps some of the bugs mentioned here on the forums already were fixed in the GitHub fork, in which case merging those fixes back into the main project will accomplish quite a bit. The GitHub fork was actually only active for less than a month, from May 6 to May 20th, so not that much could have been changed, so it should be fairly simple to merge it with the latest code. Also their fork is based on SVN revision 751 from April 30th, so I know which revision to start the merge process with. Currently the revision is 858 on SourceForge's SVN repository, so that means 107 updates to get it caught up... not too many, it was more than that with the Terra Vitae mod since its code was from last fall instead of late spring of this year.

Zaroth, one of the 2 programmers of the GitHub fork (the other one being Lasica), wrote a thread about it on the forums here: http://www.bay12forums.com/smf/index.php?topic=138426.0, and Lasica also posted in that thread too... the last day either of them posted in that thread was May 19th this year, one day before the last day either of them updated their GitHub fork, May 20th of this year. The source code for the last version of their fork, the 1 commit on May 20, 2014, is only 940 kilobytes when downloaded from GitHub, less than a megabyte! Quite compact, I am impressed! I will need to find out which version of the SVN code their fork was originally based on. Then I can start the process of merging the 2 codebases, by overwriting the files from the SVN revision it's based on with the files from the GitHub project's final version, and then doing a series of SVN updates from one SVN revision to the next, 1 by 1, and dealing with any conflicts that arise. Conflicts arise a whole bunch of the time when merging stuff like this if there's been a lot of changes in the fork/mod, which is why I just update SVN revisions 1 by 1 instead of updating to the latest revision all at once. TortoiseSVN has a good interface for fixing these conflicts luckily. The important part is to keep the source code internally consistent when doing these merges and resolving the conflicts, and to do it in a way that preserves all fixes and enhancements, both from the fork and the SVN updates, rather than removing them. I succeeded at this when doing the merge of the latest SVN code with the Terra Vitae mod back in September, so I'm pretty sure I can also succeed at a merge with the GitHub fork too.
Logged
The Liberal Crime Squad wiki is your friend.

Quote from: Lielac
Edit: Figured it out via a little bit of trial and error and oH MY GOD WHAT IS THIS MUSIC WHAT IS THIS MUSIC WHAT THE HECK IS IT SPACEBALLS MUSIC? WHATEVER IT IS IT IS MAGICAL

SlatersQuest

  • Bay Watcher
    • View Profile
Re: I am back and will try to merge the GitHub fork back into vanilla LCS
« Reply #1 on: December 01, 2014, 06:48:08 pm »

Welcome back! :)

Edit: I hope your vacation was both fun and relaxing!
Logged