Branch Overview
There are four types of branches in the QtWebKit Git repository:
- 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.
- shared/* : Everybody can create/delete/change branches that start with "shared/".
- <username>/* : 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.
- 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