User Tools

Site Tools


project_management:git

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
project_management:git [2010/06/18 11:32]
172.26.14.218
— (current)
Line 1: Line 1:
-====== git ====== 
  
-git is a distributed version control system originally written by Linus Torvalds.  The version control metadata is distributed, so every clone is a complete history of the source code.  Compare this with centralized systems like SVN or CVS where, if the central repository burns down, everything is lost! 
- 
-  * Official homepage: http://git-scm.com 
-  * Pro Git book: http://progit.org/book 
-  * Cheat sheet: http://cheat.errtheblog.com/s/git 
-  * git ready: http://www.gitready.com 
- 
-====== Installing git ====== 
- 
-====== Migrating from SVN ====== 
-  * Reference: http://www.jonmaddox.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/ 
- 
-===== Install git-svn ===== 
-<code># aptitude install git-svn</code> 
- 
-===== Create a temp git repo ===== 
-This is where we will initially copy the SVN repository. 
- 
-<code>$ mkdir beca_lims_portal_temp 
-$ cd beca_lims_portal_temp</code> 
- 
-==== Initialize temp git repo ==== 
- 
-<code>$ git svn init https://172.26.17.2/svn/beca_lims_portal/trunk/ --no-metadata</code> 
- 
-===== Map SVN users to git ===== 
- 
-==== Create an authors file ==== 
-///home/aorth/svnauthors//: 
-<file>mnorling = Martin Norling <m.norling@cgiar.org> 
-aorth = Alan Orth <a.orth@cgiar.org> 
-root = Alan Orth <a.orth@cgiar.org> 
-akihara = Absolomon Kihara <a.kihara@cgiar.org></file> 
- 
-==== Tell git about your authors ==== 
-<code>$ git config svn.authorsfile ~/svnauthors</code> 
- 
-===== Populate the temp git repo ===== 
-<code>$ git svn fetch</code> 
- 
-===== Clone from the temp repo ===== 
-When doing a normal git clone it will take everything we want from the temporary repository, while leaving behind all the SVN cruft that was there to support the git-svn  stuff. 
- 
-<code>$ cd .. 
-$ git clone beca_lims_portal_temp beca_lims_portal</code> 
- 
-===== See the commit history ===== 
-You should see all your authors mapped from the SVN repository: 
-<code>$ cd beca_lims_portal 
-$ git log</code> 
- 
-====== Tagging ====== 
-See: http://progit.org/book/ch2-6.html 
-===== Tagging a past version ===== 
-Specify a certain commit by giving the commit's checksum (or the abbreviated checksum): 
-<code>git tag -a v0.1 8e11e65</code> 
- 
-===== Pushing tags to origin ===== 
-By default ''git push'' doesn't send tags to the remote origin; you have to tell it to do it manually. 
- 
-==== Certain tag ==== 
-<code>$ git push origin v0.1</code> 
- 
-==== All tags ==== 
-Push all tags which are not already on the remote origin: 
-<code>$ git push origin --tags</code> 
- 
-====== Configuration ====== 
- 
-===== ~/.gitconfig ===== 
- 
-==== Set a default editor ==== 
-The editor is used when you have to enter a commit message. 
-<file>[core] 
-    editor = vim</file> 
-==== Colorize git output ==== 
-<file>%%[color] 
-    ui = auto 
-[color "branch"] 
-    current = yellow reverse 
-    local = yellow 
-    remote = green 
-[color "diff"] 
-    meta = yellow bold 
-    frag = magenta bold 
-    old = red bold 
-    new = green bold 
-[color "status"] 
-    added = yellow 
-    changed = green 
-    untracked = cyan%%</code> 
project_management/git.1276860770.txt.gz · Last modified: 2010/06/18 11:32 by 172.26.14.218