From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19838 invoked by alias); 10 Dec 2010 12:03:40 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 28517 Received: (qmail 24288 invoked from network); 10 Dec 2010 12:03:27 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.1 Received-SPF: none (ns1.primenet.com.au: domain at bewatermyfriend.org does not designate permitted sender hosts) From: Frank Terbeck To: Nikolai Weibull Cc: "Benjamin R. Haskell" , Brett Simmers , zsh-workers@zsh.org Subject: Re: Git completion slowness In-Reply-To: (Nikolai Weibull's message of "Fri, 10 Dec 2010 12:37:37 +0100") References: <87k4jhsx78.fsf@ft.bewatermyfriend.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) Date: Fri, 10 Dec 2010 12:49:05 +0100 Message-ID: <87fwu5sv9q.fsf@ft.bewatermyfriend.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Df-Sender: 430444 Nikolai Weibull wrote: > On Fri, Dec 10, 2010 at 12:07, Frank Terbeck wro= te: >> We've heard people complaining about _git performance on IRC for a while >> now. I have started to rewrite the _git file related completions some >> time ago, but have since been swamped at work. So that has slowed down >> to a halt. >> >> I'll attach the code to this mail though; maybe it'll be useful to >> someone (search for "Git file listing helpers" to find the helper >> functions). It doesn't have a helper for pathspecs yet, which the >> git-checkout completion (and others) may need. >> >> Also, it's something I experimented with for only a short while. The >> completions did work for me in my limited set of use-cases - they are >> probably not perfect, yet. But they scaled well even on huge >> repositories with many *many* files (like the linux kernel's git >> repository). (The ML software ate my mail, due to my attaching the code...) > I=E2=80=99ve been rewriting _git for a while now. I=E2=80=99ve updated a= ll the Main > Porcelain Commands. I=E2=80=99m currently stuck on something as unimport= ant > as git-config, but I want to get everything right and I=E2=80=99m doing i= t all > in man page order. I=E2=80=99ll hopefully have a delayed Christmas gift = for > you all at the beginning of 2011. I=E2=80=99ll take a look at your chang= es > and integrate them if they are still applicable. Yay! :) > My main problem right now is that I=E2=80=99m working off of the Debian Z= sh > Git repository where I don=E2=80=99t have write permissions. I=E2=80=99d= like to set > up a Zsh Git repository at GitHub so that I can more easily distribute > my changes, but I haven=E2=80=99t had time to look into setting this up. > Perhaps someone can explain how you set up a CVS-to-Git mirror on > GitHub? There's already a regularly updated git mirror of the zsh CVS sources at sourceforge: git://zsh.git.sf.net/gitroot/zsh/zsh When I was working on a larger update of `vcs_info', I cloned that one and published the result at github. That worked rather smoothly. > I=E2=80=99ll also try to set up zstyles to the effect of allowing you to > disable potentially costly completions. That was something I wanted to do, too. We'll need those properly documented to be able to point people to how to workaround problems with costly actions. Regards, Frank --=20 In protocol design, perfection has been reached not when there is nothing left to add, but when there is nothing left to take away. -- RFC 1925