Differences

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

Link to this comparison view

Next revision
Previous revision
soc:2008:git-usage [2008/05/22 07:32]
mdc created
soc:2008:git-usage [2008/06/09 06:26] (current)
mdc
Line 1: Line 1:
 ====== Using git for gPXE development during GSoC 2008 ===== ====== Using git for gPXE development during GSoC 2008 =====
  
 +===== Overview =====
  
 +During GSoC, you will be working with three git repositories:​
  
 +  * The master project repository
 +
 +  * Your local working repository
 +
 +  * Your personal public repository
 +
 +You will edit code in your local working repository. ​ Every so often (at least once a week, preferably more) you will push changes from your local working repository to your personal public repository. ​ This allows us to see your code.
 +
 +You will occasionally need to pull changes from the master project repository, in order to keep your local working repository up to date with the main gPXE codebase.
 +
 +When your code is ready to be merged into the main gPXE codebase, we will pull from your personal public repository.
 +===== Setting up your repositories =====
 +
 +Start by downloading the source tree as per the instructions on the [[:​download|Download]] page:
 +
 +    git-clone git://​git.etherboot.org/​scm/​gpxe.git
 +
 +This will create your local working repository.
 +
 +Add a link to your personal public repository:
 +
 +    cd gpxe
 +    git-remote add personal git+ssh://​USERNAME@git.etherboot.org//​pub/​scm/​people/​USERNAME/​gpxe.git
 +
 +where //​USERNAME//​ is your username on rom.etherboot.org.
 +
 +Make sure that your personal public repository is up to date:
 +
 +    git-push personal
 +===== Example workflow =====
 +
 +This example shows you the various stages of creating code and publishing it.
 +
 +Start by creating a branch to work in:
 +
 +    cd gpxe/src
 +    git-checkout -b mywork origin/​master
 +    git-push personal mywork
 +
 +Edit and commit some files:
 +
 +    emacs drivers/​net/​mydriver.c
 +    git-commit drivers/​net/​mydriver.c
 +
 +Publish your changes:
 +
 +    git-push personal

QR Code
QR Code soc:2008:git-usage (generated for current page)