This is an old revision of the document!
Table of Contents
git
Git is a distributed revision control, that you can use to keep up to date to the latest modification in gmusicbrowser. And as gmusicbrowser doesn't need compilation (apart from translations), git makes it very easy to follow gmusicbrowser development.
This mini-guide will show you some basic commands that you will need to follow gmusicbrowser development with git, visit the official site for more information.
Initialization
git clone http://github.com/squentin/gmusicbrowser.git
will create a “gmusicbrowser” folder with the latest version of gmusicbrowser, it also contains all gmusicbrowser's history since v1.0 (in gmusicbrowser/.git/)
All following commands are to be run from this gmusicbrowser folder.
The default “master” branch contains the latest version. You can create a local branch to follow v1.0.x with :
git checkout -b v1.0.x origin/v1.0.x
Running gmusicbrowser
You can run the currently checked-out version simply by running :
./gmusicbrowser.pl
You can of course run it from any folder by using the full path, for example :
/home/myname/gmusicbrowser/gmusicbrowser.pl
You can use the -C gmusicbrowser option to specify an alternate configuration file :
./gmusicbrowser.pl -C mynewconf
Changing version
You can switch between branches or tagged version with the branch name/tag name/hash :
git checkout master
releases are tagged with their version number, for example :
git checkout v1.1.3
will check out v1.1.3
Updating
to sync your repo with the latest changes :
git fetch
then, to update your “master” to the latest “master”
git checkout master git merge
(“git pull” can replace a fetch and a merge)
if you make any modification to tracked files, you won't be able to do checkouts, you'll first need to reset changes with :
git reset --hard
Translations
To create/update the translations files in gmusicbrowser/locale/, you'll need to do :
make locale
As this modifies po/*.po you'll need to follow with a
git reset --hard
Making local changes
If you want to make small changes to gmusicbrowser's code for your own use, you can easily create your own local branch (based on the current branch, for example “master”) :
git checkout -b mybranch
and after you update master with the above instructions, you can update your branch with :
git checkout mybranch git rebase master
if there are conflicts, you can resolve them manually or use git rebase –abort to abort the rebase.