From: Junio C Hamano Date: Tue, 07 Nov 2006 22:34:59 GMT Subject: Re: gitk feature request.. Message-ID: <7vslgu28do.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <17745.1213.22769.420355@cargo.ozlabs.ibm.com> Paul Mackerras writes: > Good idea. Junio, is there a canonical place under .git where gitk > should put such things? Well, we do not design things in advance but tend to let things evolve, which probably is a bad habit but I am not sure how else we can avoid overdesigning before knowing the needs. The existing state-keeping programs seem to keep their stuff immediately under $GIT_DIR. Examples are: .git/description (gitweb) .git/cvs-authors (cvsimport) .git/gitcvs..sqlite (cvsserver) So, .git/gitk- (or .git/gitk/) would be in line with others. We _might_ want to have a standard plan to keep Porcelains stepping on each other's toes, and probably migrating everybody to .git/aux/{common,gitcvs,gitk,...}/ would be a sane thing to do. description and cvs-authors could probably be shared across Porcelains, so I do not think we mind leaving them in the current place or throw them in .git/aux/common/ Having said that, is the gitk view supposed to be shared across users of a single repository? If you imagine yourself logging into kernel.org (perhaps X forwarded over ssh to your local machine) and browsing /pub/scm/git/git.git/, the repository itself would not be writable by you. Even if it were, I do not think you would want me to reuse the view you used from there next time I did the same on the same repository. It might make sense to give --state=dir/ parameter to gitk and tell it to use that directory to keep persistent data. Also I seem to recall you already have one file under $HOME/ to make window geometry or something persistent.