====== Hacking SER with Git ======
====== SER Git Repository ======
The Git repository of SER is available through HTTP, SSH, and
proprietary Git protocol. The HTTP and Git access methods only provide
read-only access to the repository, that means you would be able to
check out your own copy of the repository, but you will not be able to
push your changes back.
To clone the repository using HTTP do:
git clone http://git.sip-router.org/ser
To clone the repository using Git protocol do:
git clone git://git.sip-router.org/ser
If you have write access to the repository and access to the git host
then you can checkout the repository using ssh:
git clone ssh://username@git.sip-router.org/ser
where username is your username on host git.sip-router.org
You can also browse the repository through the gitweb WWW interface at
http://git.sip-router.org
====== Repository Layout ======
====== CVS Compatibility ======
The repository is also available through cvs for those who do not want
or cannot use git. A recent version of cvs client is needed to access
the repository. You need to have the following two environment
variable set if you want to access the repository anonymously through
the pserver method:
export CVSROOT=:pserver:anonymous@cvs.sip-router.org/ser
export CVS_SERVER=git-cvsserver
To checkout the source tree you need to specify the name of the
**head** (a.k.a branch) instead of the cvs module!. You can see what
branches are available in the repository in gitweb at
http://git.sip-router.org]] (look for heads)
The most important head names are:
* **master** - This is the main development/unstable branch (HEAD in cvs terminology)
* **cvs-head** - This is the branch that tracks commits in the cvs repository at berlios, no changes through git are made here
* **rel_2_0_0** - This the branch containing stable 2.0.0 release.
So if you want to checkout the latest development version then do:
cvs co master
CVS write access is only available through ssh:
export CVSROOT=:ext:username@cvs.sip-router.org/ser
export CVS_SERVER=git-cvsserver
cvs co master
Note that the layout of the repository is slightly different than it
used to be on berlios, see section Repository Layout. The cvs
compatibility layer does not support tagging and branching, so you
would need to use git for that.