Brad King Matthew J. Leotta

Develop VXL with Git

This page documents how to develop VXL through Git. See the table of contents for more information. These instruction are intended for VXL maintainers who have write access to the sourceforge repository.

Initial Setup

Before you begin development, perform initial setup:

  1. Follow the download instructions to create a local VXL clone:

    $ git clone vxl
    $ cd vxl
  2. Run the developer setup script to prepare your VXL work tree:

    $ ./scripts/setup-for-development.bash

Be sure to run the script before starting development! It installs local commit hooks that will catch many mistakes early to avoid rejection by the server-side checks.

Choose Workflow

Select one of the following workflows to contribute changes to the official VXL repository:

  • Rebase Workflow: Commit directly on the 'master' branch to build linear history, similar to our old SVN/CVS workflows. Recommended for Git beginners. Click here for instructions.

  • Branchy Workflow: Commit locally on "topic" branches and merge them to the 'master' branch. Recommended for experienced Git users. Click here for instructions.

All pushes to the official repository will be subject to server-side checks before acceptance. Follow the above setup and workflow instructions carefully to help avoid rejection.

Git is an extremely powerful version control tool that supports many different workflows for individual development and collaboration. Here we document procedures used by the VXL development community. In the interest of simplicity and brevity we do not provide an explanation of why we use this approach. Furthermore, this is not a Git tutorial. Please see our Git resource links for third-party documentation, such as the ProGit Book.


Wiki: Git-Branchy-Workflow
Wiki: Git-Download-VXL
Wiki: Git-Learn
Wiki: Git-Rebase-Workflow
Wiki: Git-Server-Side-Checks
Wiki: Git