Received: from spf3.us4.outblaze.com (spf3.us4.outblaze.com [205.158.62.25]) by sdf.lonestar.org (8.13.1/8.12.10) with ESMTP id j171C8VA024652 for ; Mon, 7 Feb 2005 01:12:09 GMT Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) by spf3.us4.outblaze.com (Postfix) with ESMTP id B56BC538FD for ; Mon, 7 Feb 2005 01:13:00 +0000 (GMT) Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Cxxcx-0000ZW-G1 for migo@homemail.com; Sun, 06 Feb 2005 20:23:47 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1CxxcI-0000VD-Vp for gnu-arch-users@gnu.org; Sun, 06 Feb 2005 20:23:07 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1CxxcC-0000Qj-83 for gnu-arch-users@gnu.org; Sun, 06 Feb 2005 20:23:02 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1CxxcB-0000QY-St for gnu-arch-users@gnu.org; Sun, 06 Feb 2005 20:22:59 -0500 Received: from [80.91.229.2] (helo=ciao.gmane.org) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.34) id 1CxxP8-0000rv-Jh for gnu-arch-users@gnu.org; Sun, 06 Feb 2005 20:09:30 -0500 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1CxxNq-0000tL-Ab for gnu-arch-users@gnu.org; Mon, 07 Feb 2005 02:08:10 +0100 Received: from hse-quebeccity-ppp3500857.sympatico.ca ([65.92.240.235]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 07 Feb 2005 02:08:10 +0100 Received: from monnier by hse-quebeccity-ppp3500857.sympatico.ca with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 07 Feb 2005 02:08:10 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: gnu-arch-users@gnu.org From: Stefan Monnier Date: Sun, 06 Feb 2005 20:09:03 -0500 Message-ID: <87fz09npy5.fsf-monnier+gmane.comp.version-control.arch.user@gnu.org> References: <20041211154916.GA1832@ukato> <20041211183809.GC3388@wisq.net> <873byasd73.fsf@tleepslib.sk.tsukuba.ac.jp> <41BDADF5.5070507@arbash-meinel.com> <20050205024050.GB26365@ukato> <20050205070604.GB18959@ukato> <877jllr4jl.fsf-monnier+gmane.comp.version-control.arch.user@gnu.org> <20050207002903.GA9015@ukato> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: hse-quebeccity-ppp3500857.sympatico.ca User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/21.3.50 (gnu/linux) Cancel-Lock: sha1:LZmmZIBx0lF33mSWmqtwdR4V7Gw= X-Gmane-MailScanner: Found to be clean X-Gmane-MailScanner: Found to be clean X-MailScanner-From: gcvau-arch-users@m.gmane.org X-MailScanner-To: gnu-arch-users@gnu.org Subject: [Gnu-arch-users] Re: File history and line annotation X-BeenThere: gnu-arch-users@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: a discussion list for all things arch-ish List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: gnu-arch-users-bounces+migo=homemail.com@gnu.org Errors-To: gnu-arch-users-bounces+migo=homemail.com@gnu.org Status: RO Content-Length: 1735 Lines: 34 >> I.e. from a set of code lines, I want to see all the diff+log that resulted >> in those lines. Also, often enough the diff+log is not what I want because >> it just corresponds to a re-indent or a move, so I often also want to see >> the parents of those diffs (i.e. the diff+log that resulted in the text that >> was then changed by those diffs), their parents's parents, ... >> until I really find the diff+log where the code was originally added. > It seems that you speak about the complete file history. No: only the part that affects some set of code lines. > It's quite possible you may be more efficient with a web based interface. I'm interested in a command-line tool on top of which a web-based (or rather Emacs-based ;-) interface can be built. > Can you formalize such "trace-code" command, its input and output? It could look like: tla trace-code FILE FROM TO REV and return all the diff+log that together result in lines FROM..TO of revision REV of file FILE. Hopefully the output would be written in such a way that it is easy to mechanically extract further "FROM TO REV" triplets in order to call the command again to get the trace-code explaining how the code modified by one of the diff+log ended up the way it is and thus work your way back in the history of the relevant piece of code through reindentations, moves, typos, ... until you get to the actual meat (typically the one or two diff+log that really introduced the piece of code you're wondering about). Stefan _______________________________________________ Gnu-arch-users mailing list Gnu-arch-users@gnu.org http://lists.gnu.org/mailman/listinfo/gnu-arch-users GNU arch home page: http://savannah.gnu.org/projects/gnu-arch/