# qgit-0.6

4 messages from 2005-06-18 to 2005-06-19. Participants: Marco Costalba, Ingo Molnar.
Thread: https://gitlist.dev/t/967

## Marco Costalba, 2005-06-18 10:38

Subject: qgit-0.6
Message-ID: <20050618103805.8461.qmail@web26302.mail.ukl.yahoo.com>
URL: https://gitlist.dev/e/20050618103805.8461.qmail%40web26302.mail.ukl.yahoo.com

```
Here is qgit-0.6, a git GUI viewer

New in this version:

- added annotate

- added color highlighting to selected diff target

- added color to file list: green new file, red removed one

- fixed locale visualizations

- fixed correct git-rev-list range handling

- fixed center on deleted files in diff viewer

- fixed disappearing files when reloading (nasty one)

- clean up of diff target logic

- added README

You can download from 
http://prdownloads.sourceforge.net/qgit/qgit-0.6.tar.bz2?download

To try qgit:

1) Unpack downloaded file
2) make
3) cd bin
4) copy qgit bin file anywhere in your path

Some (updated) screenshots at:
http://sourceforge.net/project/screenshots.php?group_id=139897

A word on annotate: In file viewer, after a while :-), the file contents will change to show the
annotations. Annotations are calculated in background so it may takes some time to show (it
depends mostly on fetching history patches with git-diff-tree -p ). History is snapshotted to
actual loaded data so peraphs you need qgit to have loaded an interesting amount of data before
calling file viewer.


I think all known (to me) problems should be fixed now. Apart from the new annotate function, a
bit experimental, qgit should be quite usable. 
So if you find some bugs/issues/inconsistencies/ etc.. please drop me a line.


Marco




		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - Helps protect you from nasty viruses. 
http://promotions.yahoo.com/new_mail

```

## Ingo Molnar, 2005-06-19 13:00

Subject: Re: qgit-0.6
Message-ID: <20050619130035.GA15355@elte.hu>
URL: https://gitlist.dev/e/20050619130035.GA15355%40elte.hu
In-Reply-To: <20050618103805.8461.qmail@web26302.mail.ukl.yahoo.com>

```

* Marco Costalba <mcostalba@yahoo.it> wrote:

> A word on annotate: In file viewer, after a while :-), the file 
> contents will change to show the annotations. Annotations are 
> calculated in background so it may takes some time to show (it depends 
> mostly on fetching history patches with git-diff-tree -p ). History is 
> snapshotted to actual loaded data so peraphs you need qgit to have 
> loaded an interesting amount of data before calling file viewer.

works fine here and is nice and fast, but there are a few minor visual 
glitches:

- annotated file contents are not properly aligned over each other. E.g.  
  check commit 7875b50d1a9928e683299b283bfe94778b6c344e in the current 
  git repository, and select read-tree.c and view it annotated - the 
  lines start right after the author field ends, not in any aligned way.

- the tree visualization is hard to follow - gitk's output is much 
  nicer. As an example of nice rendering check out the octopus merge 
  around commit 211232bae64bcc60bbf5d1b5e5b2344c22ed767e. One glance at 
  the gitk output shows what happened - qgit's output is in essence 
  unreadable.

and a few requests for enhancements if you dont mind:

 - in annotated mode, it would be nice to select a particular line 
   and then double-click would jump to the commit that added that line.  
   This would nicely round up annotation support.

 - plaintext search capability in every window. E.g. in the annotated
   file window i often would like to search for some code, or to jump to
   a given line.

	Ingo

```

## Ingo Molnar, 2005-06-19 13:02

Subject: Re: qgit-0.6
Message-ID: <20050619130257.GA18226@elte.hu>
URL: https://gitlist.dev/e/20050619130257.GA18226%40elte.hu
In-Reply-To: <20050619130035.GA15355@elte.hu>

```

* Ingo Molnar <mingo@elte.hu> wrote:

> works fine here and is nice and fast, but there are a few minor visual 
> glitches:

one more thing: for the annotated output it would be nicer to have 
fixed-width fonts to display code. For commit messages the current 
output is fine, but code is much more readable in fixed-width output.

	Ingo

```

## Ingo Molnar, 2005-06-19 13:05

Subject: Re: qgit-0.6
Message-ID: <20050619130542.GA18325@elte.hu>
URL: https://gitlist.dev/e/20050619130542.GA18325%40elte.hu
In-Reply-To: <20050619130035.GA15355@elte.hu>

```

on FC4 the build is quite noisy. Not a big issue because it otherwise 
builds and works fine:

scons -Q
/usr/lib/qt-3.3/bin/uic -o src/diffbase.h src/diffbase.ui
/usr/lib/qt-3.3/bin/uic -impl diffbase.h -o src/uic_diffbase.cc src/diffbase.ui
/usr/lib/qt-3.3/bin/moc -o src/moc_diffbase.cc src/diffbase.h
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_diffbase.o src/uic_diffbase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_diffbase.o src/moc_diffbase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/diffimpl.o src/diffimpl.cpp
/usr/lib/qt-3.3/bin/uic -o src/filebase.h src/filebase.ui
/usr/lib/qt-3.3/bin/uic -impl filebase.h -o src/uic_filebase.cc src/filebase.ui
/usr/lib/qt-3.3/bin/moc -o src/moc_filebase.cc src/filebase.h
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_filebase.o src/uic_filebase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_filebase.o src/moc_filebase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/fileimpl.o src/fileimpl.cpp
/usr/lib/qt-3.3/bin/uic -o src/mainbase.h src/mainbase.ui
/usr/lib/qt-3.3/bin/uic -impl mainbase.h -o src/uic_mainbase.cc src/mainbase.ui
/usr/lib/qt-3.3/bin/moc -o src/moc_mainbase.cc src/mainbase.h
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
QSettings: error creating /.qt
QSettings::sync: filename is null/empty
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/git.o src/git.cpp
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/uic_mainbase.o src/uic_mainbase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_mainbase.o src/moc_mainbase.cc
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/mainimpl.o src/mainimpl.cpp
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/qgit.o src/qgit.cpp
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/thread.o src/thread.cpp
/usr/lib/qt-3.3/bin/moc -o src/moc_diffimpl.cc src/diffimpl.h
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_diffimpl.o src/moc_diffimpl.cc
/usr/lib/qt-3.3/bin/moc -o src/moc_fileimpl.cc src/fileimpl.h
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_fileimpl.o src/moc_fileimpl.cc
/usr/lib/qt-3.3/bin/moc -o src/moc_git.cc src/git.h
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_git.o src/moc_git.cc
/usr/lib/qt-3.3/bin/moc -o src/moc_mainimpl.cc src/mainimpl.h
g++ -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/lib/qt-3.3/include -c -o src/moc_mainimpl.o src/moc_mainimpl.cc
g++ -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

```
