= Branch Overview = There are three types of branches in the QtWebKit Git repository: * /* : This is where developers publish their changes. You can have as many so-called topic branches as you like. For example holger/crash-fix would be a name for such a topic branch. * qtwebkit: This is the main development branch. Currently only Lars and Simon can update this branch. If you feel comfortable enough with Git we can add you. * svn/* such as svn/master or svn/Safari-3-branch. The branches prefixed with svn/ are read-only and are mirrored from the WebKit Subversion repository. = Howto = == Getting Started == * Clone your git repository from {{{git+ssh://git@code.staikos.net/srv/git/webkit}}} * If you don't have ssh/push access you can do a read-only clone using {{{git clone git://code.staikos.net/webkit}}} * After that you will have one local branch called {{{qtwebkit}}}. * Tell git your full name and email address: {{{ git config user.email joe.doe@foobar.com git config user.name Joe Doe }}} == Step-by-step instructions == (Note: Substitute {{{simon/crash-fix}}} accordingly) * Create a local topic branch: {{{git checkout -b simon/crash-fix origin/qtwebkit}}} * After that you will be on a local {{{simon/crash-fix}}} branch. * Now you can hack away and commit as many changes as you want. * To publish your changes for the first time run the following command: {{{git push origin simon/crash-fix}}} * You can continue hacking and if you want to publish more changes you can just run {{{git push}}} * If you want to merge the latest changes from the {{{qtwebkit}}} branch run this: {{{ git fetch git merge origin/qtwebkit }}} * When you are happy with your changes and they have been merged into the {{{qtwebkit}}} branch you can delete your branch on the public repository using {{{git push origin :simon/crash-fix}}} * After deleting the branch on the public repository you can also delete it locally: * Switch to a different branch, such as {{{qtwebkit}}}: {{{git checkout qtwebkit}}} * Delete the branch: {{{git branch -D simon/crash-fix}}} * If you don't have ssh/push access you can do all of the above apart from the {{{git push}}} commands. You can create a series of patches using {{{git format-patch origin/qtwebkit}}}. That will create a series of numbered {{{.patch}}} files that include all your commits. == Switching from the Trolltech Labs repository == All you have to do is to adjust your {{{origin}}}. Edit the {{{.git/config}}} file and look for the {{{[remote "origin"]}}} section. Change the the {{{url = ...}}} line to read {{{url = git+ssh://git@code.staikos.net/srv/git/webkit}}}