Difference between revisions of "Git Migration"

From GnuCash
Jump to: navigation, search
(Still to be investigated)
(Github or self-hosting at code.gnucash.org ?)
Line 44: Line 44:
 
| TBD
 
| TBD
 
|}
 
|}
 +
 +
<br style="clear:both;">
  
 
== Github or self-hosting at code.gnucash.org ? ==
 
== Github or self-hosting at code.gnucash.org ? ==

Revision as of 08:45, 13 August 2012

GnuCash is currently in the process of migrating from svn to git. Many parts of the GnuCash development process currently rely on svn only still. All these parts have to be rewritten to work with either svn or git(hub).

This page intends to keep track of the parts that still have to be reworked.

Area Description Files Status
Win32 build packaging/win32/install-impl.sh The equivalent of svn update should be implemented. Our custom git-update script could be good to start with, but is currently not part of the GnuCash git repository, so it has to be fetched from somewhere else. DONE 2012-08-12
Win32 nightly build packaging/win32/daily_build.sh

packaging/win32/weekly_build.sh packaging/win32/build_package.sh packaging/win32/build_tags.sh

Each of these files uses svn for either update, get tags, get revision and so on. An equivalent in git should be setup. Personally, I think the cleanest would be to create a second set of scripts for git, which is a copy of the original scripts with all svn usage replaced with git usage. These scripts can then be called to daily_build.bat independently from the svn ones.

Additional tricky part: git can't be in the PATH, because its dll's conflict with the GnuCash ones.

DONE 2012-08-12, just needs to be activated in daily_build.bat still
Docs nigthly build  ? There is a script that build and uploads the documentation every night. I don't know where this script is stored. TBD
Doxygen nightly build  ? Equally there is a script that builds and uploads the doxygen documentation every night. I don't know where that script is stored. TBD
Commit hooks  ? Currently when a patch is committed, notification mails are sent out. We should figure out how to set this up on github. TBD
Website update  ? Another commit hook will update the website whenever changes are committed to the htdocs svn repository. If the repository migrated to github as well, we'll have to figure out how to trigger these updates from within github. TBD


Github or self-hosting at code.gnucash.org ?

The discussion on this is still ongoing. The section below will try to list as many advantages and disadvantages of both options as possible to make it easier to decide.

Pro Con
Github
  • Good uptime
  • Easily caters for multiple admins
  • Very popular
  • Not under our own control
code.gnucash.org
  • Under our own control
  • Single point of failure (one internet connection, one single admin)


Still to be investigated

  • Integration with our existing infrastructure like commit hooks and htdocs, ...