Using Git with Inkscape's Repositories
It is possible to hack on Inkscape and use the git tools instead of bzr. If you follow these instructions you can tailor your development to be comfortable and efficient for your needs.
We use a tool called git-bzr-ng to allow git to talk to bzr remote hosts. Our repositories are all bzr branches, but that shouldn't matter to you at all. Your own branches on your computer can be git and you can talk to our bzr branches as if they were on GitHub or other git host provider.
If you are using a Debian/Ubuntu computer for your development needs, you can simply install git-bzr-ng from the command line like so:
sudo apt-get install git-bzr-ng
If you're using Fedora, you can install git-bzr using yum:
sudo yum install git-bzr
For Windows, Mac and other Free Desktops/Linux systems, please see the documentation here.
Once you have the plugin above installed, you should be able to use the git command with bzr repositories. To access inkscape, use the following commands:
git bzr clone lp:inkscape inkscape cd inkscape
Create a git branch and check your branches:
git checkout -b touch_branch git branch -a
To commit and push your changes to a new inkscape branch ready for review, be aware that you do need a launchpad account with your ssh keys uploaded in order to push your changes:
git commit -a -m "Commit message" git bzr push lp:~[your-launchpad-username]/inkscape/[new_branch_name]
git bzr push lp:~doctormo/inkscape/fix-for-bug466366 will push to my very own branch which can be reviewed and merged.
If you want to push directly to the inkscape trunk (and you have those permissions) you can simply do:
git bzr push
To merge in someone elses changes (a merge in bzr terms) you can use these commands:
git bzr import lp:~user/inkscape/branchname branchname git checkout inkscape git pull . -- branchname
Further reading on git-bzr usage.