{"thread":{"id":"967","subject":"qgit-0.6","startedAt":"2005-06-18T10:38:05Z","lastAt":"2005-06-19T13:05:42Z","messageCount":4,"participants":["Marco Costalba","Ingo Molnar"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"5015","messageId":"20050618103805.8461.qmail@web26302.mail.ukl.yahoo.com","threadId":"967","inReplyTo":null,"subject":"qgit-0.6","fromName":"Marco Costalba","fromEmail":"mcostalba@yahoo.it","sentAt":"2005-06-18T10:38:05Z","receivedAt":"2005-06-18T10:38:05Z","isPatch":false,"sender":{"key":"mcostalba@gmail.com","avatar":null},"body":"Here is qgit-0.6, a git GUI viewer\n\nNew in this version:\n\n- added annotate\n\n- added color highlighting to selected diff target\n\n- added color to file list: green new file, red removed one\n\n- fixed locale visualizations\n\n- fixed correct git-rev-list range handling\n\n- fixed center on deleted files in diff viewer\n\n- fixed disappearing files when reloading (nasty one)\n\n- clean up of diff target logic\n\n- added README\n\nYou can download from \nhttp://prdownloads.sourceforge.net/qgit/qgit-0.6.tar.bz2?download\n\nTo try qgit:\n\n1) Unpack downloaded file\n2) make\n3) cd bin\n4) copy qgit bin file anywhere in your path\n\nSome (updated) screenshots at:\nhttp://sourceforge.net/project/screenshots.php?group_id=139897\n\nA word on annotate: In file viewer, after a while :-), the file contents will change to show the\nannotations. Annotations are calculated in background so it may takes some time to show (it\ndepends mostly on fetching history patches with git-diff-tree -p ). History is snapshotted to\nactual loaded data so peraphs you need qgit to have loaded an interesting amount of data before\ncalling file viewer.\n\n\nI think all known (to me) problems should be fixed now. Apart from the new annotate function, a\nbit experimental, qgit should be quite usable. \nSo if you find some bugs/issues/inconsistencies/ etc.. please drop me a line.\n\n\nMarco\n\n\n\n\n\t\t\n__________________________________ \nDo you Yahoo!? \nYahoo! Mail - Helps protect you from nasty viruses. \nhttp://promotions.yahoo.com/new_mail\n"},{"id":"5038","messageId":"20050619130035.GA15355@elte.hu","threadId":"967","inReplyTo":"20050618103805.8461.qmail@web26302.mail.ukl.yahoo.com","subject":"Re: qgit-0.6","fromName":"Ingo Molnar","fromEmail":"mingo@elte.hu","sentAt":"2005-06-19T13:00:35Z","receivedAt":"2005-06-19T13:00:35Z","isPatch":false,"sender":{"key":"mingo@elte.hu","avatar":null},"body":"\n* Marco Costalba <mcostalba@yahoo.it> wrote:\n\n> A word on annotate: In file viewer, after a while :-), the file \n> contents will change to show the annotations. Annotations are \n> calculated in background so it may takes some time to show (it depends \n> mostly on fetching history patches with git-diff-tree -p ). History is \n> snapshotted to actual loaded data so peraphs you need qgit to have \n> loaded an interesting amount of data before calling file viewer.\n\nworks fine here and is nice and fast, but there are a few minor visual \nglitches:\n\n- annotated file contents are not properly aligned over each other. E.g.  \n  check commit 7875b50d1a9928e683299b283bfe94778b6c344e in the current \n  git repository, and select read-tree.c and view it annotated - the \n  lines start right after the author field ends, not in any aligned way.\n\n- the tree visualization is hard to follow - gitk's output is much \n  nicer. As an example of nice rendering check out the octopus merge \n  around commit 211232bae64bcc60bbf5d1b5e5b2344c22ed767e. One glance at \n  the gitk output shows what happened - qgit's output is in essence \n  unreadable.\n\nand a few requests for enhancements if you dont mind:\n\n - in annotated mode, it would be nice to select a particular line \n   and then double-click would jump to the commit that added that line.  \n   This would nicely round up annotation support.\n\n - plaintext search capability in every window. E.g. in the annotated\n   file window i often would like to search for some code, or to jump to\n   a given line.\n\n\tIngo\n"},{"id":"5039","messageId":"20050619130257.GA18226@elte.hu","threadId":"967","inReplyTo":"20050619130035.GA15355@elte.hu","subject":"Re: qgit-0.6","fromName":"Ingo Molnar","fromEmail":"mingo@elte.hu","sentAt":"2005-06-19T13:02:57Z","receivedAt":"2005-06-19T13:02:57Z","isPatch":false,"sender":{"key":"mingo@elte.hu","avatar":null},"body":"\n* Ingo Molnar <mingo@elte.hu> wrote:\n\n> works fine here and is nice and fast, but there are a few minor visual \n> glitches:\n\none more thing: for the annotated output it would be nicer to have \nfixed-width fonts to display code. For commit messages the current \noutput is fine, but code is much more readable in fixed-width output.\n\n\tIngo\n"},{"id":"5040","messageId":"20050619130542.GA18325@elte.hu","threadId":"967","inReplyTo":"20050619130035.GA15355@elte.hu","subject":"Re: qgit-0.6","fromName":"Ingo Molnar","fromEmail":"mingo@elte.hu","sentAt":"2005-06-19T13:05:42Z","receivedAt":"2005-06-19T13:05:42Z","isPatch":false,"sender":{"key":"mingo@elte.hu","avatar":null},"body":"\non FC4 the build is quite noisy. Not a big issue because it otherwise \nbuilds and works fine:\n\nscons -Q\n/usr/lib/qt-3.3/bin/uic -o src/diffbase.h src/diffbase.ui\n/usr/lib/qt-3.3/bin/uic -impl diffbase.h -o src/uic_diffbase.cc src/diffbase.ui\n/usr/lib/qt-3.3/bin/moc -o src/moc_diffbase.cc src/diffbase.h\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_diffbase.o src/uic_diffbase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_diffbase.o src/moc_diffbase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/diffimpl.o src/diffimpl.cpp\n/usr/lib/qt-3.3/bin/uic -o src/filebase.h src/filebase.ui\n/usr/lib/qt-3.3/bin/uic -impl filebase.h -o src/uic_filebase.cc src/filebase.ui\n/usr/lib/qt-3.3/bin/moc -o src/moc_filebase.cc src/filebase.h\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_filebase.o src/uic_filebase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_filebase.o src/moc_filebase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/fileimpl.o src/fileimpl.cpp\n/usr/lib/qt-3.3/bin/uic -o src/mainbase.h src/mainbase.ui\n/usr/lib/qt-3.3/bin/uic -impl mainbase.h -o src/uic_mainbase.cc src/mainbase.ui\n/usr/lib/qt-3.3/bin/moc -o src/moc_mainbase.cc src/mainbase.h\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\nQSettings: error creating /.qt\nQSettings::sync: filename is null/empty\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/git.o src/git.cpp\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_mainbase.o src/uic_mainbase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_mainbase.o src/moc_mainbase.cc\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/mainimpl.o src/mainimpl.cpp\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/qgit.o src/qgit.cpp\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/thread.o src/thread.cpp\n/usr/lib/qt-3.3/bin/moc -o src/moc_diffimpl.cc src/diffimpl.h\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_diffimpl.o src/moc_diffimpl.cc\n/usr/lib/qt-3.3/bin/moc -o src/moc_fileimpl.cc src/fileimpl.h\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_fileimpl.o src/moc_fileimpl.cc\n/usr/lib/qt-3.3/bin/moc -o src/moc_git.cc src/git.h\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_git.o src/moc_git.cc\n/usr/lib/qt-3.3/bin/moc -o src/moc_mainimpl.cc src/mainimpl.h\ng++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_mainimpl.o src/moc_mainimpl.cc\ng++ -o bin/qgit src/uic_diffbase.o src/moc_diffbase.o src/diffimpl.o src/uic_filebase.o src/moc_filebase.o src/fileimpl.o src/git.o src/uic_mainbase.o src/moc_mainbase.o src/mainimpl.o src/qgit.o src/thread.o src/moc_diffimpl.o src/moc_fileimpl.o src/moc_git.o src/moc_mainimpl.o -L/usr/lib/qt-3.3/lib -lqt-mt\n"}]}