From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: esr@thyrsus.com (Eric S. Raymond) Newsgroups: gmane.emacs.devel Subject: The git mirror is *very* badly screwed up Date: Fri, 24 Jan 2014 11:29:37 -0500 (EST) Message-ID: <20140124162937.8699D38155C@snark.thyrsus.com> NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1390581013 13058 80.91.229.3 (24 Jan 2014 16:30:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 24 Jan 2014 16:30:13 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jan 24 17:30:21 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W6je8-0006vx-Bn for ged-emacs-devel@m.gmane.org; Fri, 24 Jan 2014 17:30:20 +0100 Original-Received: from localhost ([::1]:47549 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W6je7-00074F-TQ for ged-emacs-devel@m.gmane.org; Fri, 24 Jan 2014 11:30:19 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40349) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W6je0-0006x2-GO for emacs-devel@gnu.org; Fri, 24 Jan 2014 11:30:16 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W6jdw-0007BJ-7h for emacs-devel@gnu.org; Fri, 24 Jan 2014 11:30:12 -0500 Original-Received: from static-71-162-243-5.phlapa.fios.verizon.net ([71.162.243.5]:59952 helo=snark.thyrsus.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W6jdw-0007BE-3o for emacs-devel@gnu.org; Fri, 24 Jan 2014 11:30:08 -0500 Original-Received: by snark.thyrsus.com (Postfix, from userid 1000) id 8699D38155C; Fri, 24 Jan 2014 11:29:37 -0500 (EST) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 71.162.243.5 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:169017 Archived-At: While investigating the git mirror with reposurgeon. I spent most of the last two days chasing some odd behavior in reposurgeon that I thought was a bug. But it turns out not to be a bug at all; rather, there's a kind of malformation in the mirror I've never seen before. Look at this span of commits: reposurgeon% 867? inspect Event 865 =============================================================== commit refs/tags/v0.3.0 mark :860 author Chris Wanstrath 1268028778 -0800 committer Chris Wanstrath 1268028778 -0800 data 13 Just in case from :858 M 100644 :859 coffee-mode.el Event 867 =============================================================== commit refs/tags/v0.3.0 mark :862 author Chris Wanstrath 1268028809 -0800 committer Chris Wanstrath 1268028809 -0800 data 6 0.3.0 from :860 M 100644 :861 coffee-mode.el Event 869 =============================================================== commit refs/tags/sml-mode-6.0 mark :864 author Sergei Lebedev 1269545595 -0700 committer Chris Wanstrath 1269545595 -0700 data 60 Fix hanging of `coffee-previous-indent` at start of buffer. from :862 M 100644 :863 coffee-mode.el Event 874 =============================================================== commit refs/tags/sml-mode-6.0 mark :869 author tav 1269545212 +0800 committer Chris Wanstrath 1269545212 +0800 data 64 Change so that the compiled buffer doesn't open in a new frame. from :862 M 100644 :868 coffee-mode.el This looks pretty normal - until you notice that events 869 and 874, which should be sequential commits, are both parented by event 867. This is badly wrong; either 874 should be parented on 869 (almost certainly correct) or 869 and 874 should have different branch fields. I had wondered why the parent links in the early part of a gitk listing of the Emacs history looked so spaghettilike. Now I think many of them are wrong, and this also explains the persistent problems reposurgeon has been exhibiting with junk lightweight tags that can't be deleted. (The bad links defeat reposurgeon's algorithm for reassigning branch fields.) I'm investigating possible remedies. Because this kind of malformation is easy to spot once you know what to look for, it may be possible for me to write an automated fixer in reposurgeon. Andreas, how exactly are you doing the mirroring from Bazaar? Is there any chance parent links are being scrambled at that point? The other possibility is that parsecvs botched the CVS lift really badly. That wouldn't be good news for me either, because if so cvs-fast-export probably inherited the bug. -- Eric S. Raymond He that would make his own liberty secure must guard even his enemy from oppression: for if he violates this duty, he establishes a precedent that will reach unto himself. -- Thomas Paine