description | Git Pickaxe Frontend |
owner | pasky@suse.cz |
last change | Wed, 29 Oct 2008 17:23:29 +0000 (29 10:23 -0700) |
URL | git://repo.or.cz/giddy.git |
| https://repo.or.cz/giddy.git |
push URL | ssh://repo.or.cz/giddy.git |
| https://repo.or.cz/giddy.git (learn more) |
bundle info | giddy.git downloadable bundles |
content tags
|
|
README
Giddy is the prophecied GUI pickaxe frontend for Git
Pickaxe is perhaps a not-so-well-known mechanism in Git to grep commit changes
for strings, front-ended by git log -S. This means that
git log -S'panic()'
will show you all commits that introduce or remove the string 'panic()' from
the source. This is a more flexible alternative to git blame, which does
pretty much the same thing, but only on line level.
This tool will let you select the strings in a Gtk GUI view of the file and
follow the evolution of code blocks you are after.
Please bear in mind that this has been written in 24+3 hours by a tired
hacker who coded in GTK for pretty much the first time. That's my excuse
why it looks like crap, yes. ;-)
3000ft design overview:
main -> layouts GTK
-> Giddy::Controller
<-> Giddy::Toolbar
<-> Giddy::TreeBrowser
<-> Giddy::CommitBrowser
<-> Giddy::FilesPanel
-> Giddy::FileTab
-> Giddy::FileViewer | Giddy::CommitViewer
-> Giddy::DiffViewer
(Giddy::FileViewer and Giddy::DiffViewer have common ancestor
Giddy::PickaxableViewer.)
(Interaction between the objects is controlled by Giddy::Controller.
Thus, it should be possible to take e.g. Giddy::FileViewer and use
it standalone from the rest.)