application icongmusicbrowser

no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Previous revision
Next revision
guide:git [2010/01/23 05:09] – external edit 127.0.0.1
Line 1: Line 1:
 +====== git ======
 +[[http://en.wikipedia.org/wiki/Git_%28software%29|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 [[http://git-scm.com/documentation|official site]] for more information.
 +
 +===== Initialization =====
 +<code>git clone http://github.com/squentin/gmusicbrowser.git</code>
 +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 :
 +<code>git checkout -b v1.0.x origin/v1.0.x</code>
 +
 +===== Running gmusicbrowser =====
 +You can run the currently checked-out version simply by running :
 +<code>./gmusicbrowser.pl</code>
 +You can of course run it from any folder by using the full path, for example :
 +<code>/home/myname/gmusicbrowser/gmusicbrowser.pl</code>
 +
 +You can use the -C gmusicbrowser option to specify an alternate configuration file :
 +<code>./gmusicbrowser.pl -C mynewconf</code>
 +
 +===== Changing version =====
 +You can switch between branches or tagged version with the branch name/tag name/hash :
 +<code>git checkout master</code>
 +releases are tagged with their version number, for example :
 +<code>git checkout v1.1.3</code>
 +will check out v1.1.3
 +
 +===== Updating =====
 +to sync your repo with the latest changes :
 +<code>git fetch</code>
 +
 +then, to update your "master" to the latest "master"
 +<code>
 +git checkout master
 +git merge
 +</code>
 +
 +("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 :
 +<code>git reset --hard</code>
 +
 +
 +===== Translations =====
 +To create/update the translations files in gmusicbrowser/locale/, you'll need to do :
 +<code>make locale</code>
 +As this modifies po/*.po you'll need to follow with a
 +<code>git reset --hard</code>
 +
 +===== 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") :
 +<code>git checkout -b mybranch</code>
 +and after you update master with the above instructions, you can update your branch with :
 +<code>
 +git checkout mybranch
 +git rebase master
 +</code>
 +if there are conflicts, you can resolve them manually or use
 +git rebase --abort
 +to abort the rebase.
  
guide/git.txt · Last modified: 2022/05/23 01:30 by 127.0.0.1
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0