Development

From Syslinux Wiki
Jump to: navigation, search

Tracking Syslinux development with GIT

The following link points to the status page of the official development tree:

http://repo.or.cz/syslinux.git


To clone the repository for your own development, install the git software package, and run:

git clone --recursive git://repo.or.cz/syslinux.git a-new-directory

or alternatively using the Hyper Text Transfer Protocol (if tcp/9418 is blocked):

git clone http://repo.or.cz/syslinux.git a-new-directory
cd a-new-directory
sed -i~ 's/git/http/' .gitmodules
git submodule update --init

For users who were tracking kernel.org as origin and wish to update:

git remote rename origin kernel.org
git remote add origin git://repo.or.cz/syslinux.git
git pull origin

You can then make changes and "git commit" them to your own repository, thus maintaining a parallel branch of development. Furthermore, you can use the command

git pull

to update your tree with upstream changes.

The "gitk" tool will show you a visual history of the repository.

For more information about GIT, see an overview, the (gitcore) tutorial(s), the git (command) Reference, or the man pages.


Browse the Syslinux source code

You can browse the Syslinux source code through the GIT web interface at one of the following repositories:

http://repo.or.cz/syslinux.git
http://git.zytor.com/?p=syslinux/syslinux.git;a=summary
http://git.kernel.org/cgit/boot/syslinux/syslinux.git

Note: These repositories are official, but they are sometimes not fully synchronized during development periods between stable releases.


Submitting Patches

Please see the doc/SubmittingPatches.txt file inside the Syslinux source code.

If it's in a public git tree, a common procedure is to follow a <something>-for-<someone> branch naming convention where <something> is what's done and <someone> is the person to whom you are addressing the change.

Syslinux internals

A series of pages describing the Syslinux internal architecture and functionality (in an initial stage of development), can be found at Category:SYSLINUX_Internals. Please note that those pages might possibly be incomplete, inaccurate or outdated.

Any contributions are welcome!

Resources