Here is the latest info on Pyrite. The blog entry can be found here
http://pyrite.sophiasuchtig.com/2008/03/pyrite-gui.html
along with some screenshots of where the GUI part is headed. The body of the post is as follows....
--- It has been a while since I have posted anything on here. Here is something to make sure people know about the current status of pyrite. I have been working toward getting pyrite able to handle the day to day activities of being a git wrapper. That is, it is a pass-through porcelain on top of git. The current TODO list looks something like this.
* Get basic commands to run on the command line. (this one is mostly done,
I just have to do some of the more interesting things like
rebase, cherry-pick
etc)
* Add support for styles and templates. Think pretty-print or
styles/templates
under Hg. ( I can probably tag v0.1 at this point)
* GUI (see below, should be v0.2)
* Built-in HTTP server. This will be similar to hg serve and use a similar
framework. The hg serve is very nice and one of the things that prompted me
to start this. (v0.3)
* Convert direct shell commands to c extensions that do the shell commands.
This doesn't make much sense by itself, but is very nice for the
next step...(v0.5)
* Convert to libgit where libgit is currently implemented. Only
part of git functions as
a c library, so much will still have to be done in
sub-processes. This will probably
take a while (v0.9)
* Squeeze out bugs and I can call it v1.0.After that we will see where things go. I expect that much of my work will go into converting the places where I am forced to run sub-processes to library functions in git.
Now on to the fun part, the GUI.
Long ago, I was temted to create a GUI for git that ran on Windows and was written in C#. This was called Widgit. I did some work on it, but I could not convince my co-workers to be interested in git, and without someone to use what I was writting, it seemed kind of pointless. Fast forward a few months and I started working on Pyrite. Since this was more geared to the Linux crowd, I felt I could use python and GTK+ to make the GUI, but I liked several of the Ideas that I had for Widgit and I thought I could reuse them. Here is what the basic view looked like...
http://bp2.blogger.com/_UFT2vGj15mM/R99T5sePnfI/AAAAAAAAAAU/UQwzPlwk3pU/ s320/Screenshot-Widgit.png
There was a status pane also...
http://bp2.blogger.com/_UFT2vGj15mM/R99UVsePngI/AAAAAAAAAAc/vRnHrlW3VCs/ s320/Screenshot-status-tree.png
I was also fairly proud of the commit view filter, which I thought was handy...
http://bp2.blogger.com/_UFT2vGj15mM/R99VAsePnhI/AAAAAAAAAAk/8TJkbWnuzKg/ s320/Screenshot-CommitFilter.png
And I plan to have all of these elements in Pyrite. Also, I really like some of the things I have seen in other GUIs that I want to borrow. For instance the graphical tree structure of Giggle is very nice and done using Cairo. Also, it shows the diffs a la gitk.
http://bp1.blogger.com/_UFT2vGj15mM/R99VhcePniI/AAAAAAAAAAs/7iK79-42OK0/ s1600-h/Screenshot--Giggle.png
So all these things are nice. I have done a little bit of work on the GUI, but its just getting started. Here you can see what the current status of it is...
http://bp1.blogger.com/_UFT2vGj15mM/R99V5cePnjI/AAAAAAAAAA0/RkbQlqdNl-o/ s1600-h/Screenshot-Pyrite.png
If anyone has any suggestions, I will be glad to hear them.
-Govind