all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: esr@thyrsus.com (Eric S. Raymond)
To: David Reitter <david.reitter@gmail.com>, ":"@thyrsus.com
Cc: emacs-devel@gnu.org
Subject: Trying to graft the Aquamacs branch
Date: Fri, 28 Mar 2014 14:06:57 -0400 (EDT)	[thread overview]
Message-ID: <20140328180657.DC5DB380492@snark.thyrsus.com> (raw)

In order to graft the Aquamacs branch to the git conversion of the
Emacs repository, I need to extract from it an import-stream branch dump
consisting of all the Aquamacs commits and *only* those commits.

Furthermore, in order for merges to Aquamacs to be built correctly,
the parent links in the branch dump cannot be ordinary marks, which
would have no meaning outside the full Aquamacs repository the branch
dump was made from.  Instead, they must be callouts - action stamps
that identify a parent commit by committer email and date and can
refer between repositories.

Identifying the correct set of commits is not trivial either.  To
accomplish this, I have written a new reposurgeon primitive function
#dsc() which takes a selection set and adds to it all descendants of
that set.

In principle, then, it should be possible to extract the correct
branch dump like this:

reposurgeon
% read aquamacs-emacs
% @dsc(<2005-06-06T18:41:57Z!david.reitter@gmail.com>) write --callout >aquamacs-branch.fi

where the @dsc() argument is intended to be the initial Aquamacs
commit from which all subsequent ones are descended.  If this worked,
I should then be able to do this:

% read <aquamacs-branch.fi
% read <emacs.fi
$ graft aquamacs-branch

The latter command would look for commits in the Emacs repository
(which is selected because iot was just read) that match each callout
in the Aquamacs branch dump, and attach them as parents.

Alas, when I try to perform the write --callout operation reposurgeon
runs out of memory.  That's on a machine with 8GB of core.

Smaller callout-dump cases work (they're in my regression-test suite) 
so I think I'm hitting a hardware limit here.

Accordingly, I have two requests:

1) Please verify that I have identified the correct root commit of the
Aquamacs branch. If I have not, I need to know what it actually is.

2) If you have access to a machine with more physical memory, please
try to extract the branch dump and drop it somewhere I can get it.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>

Every Communist must grasp the truth, 'Political power grows out of
the barrel of a gun.'
        -- Mao Tse-tung, 1938, inadvertently endorsing the Second Amendment.



             reply	other threads:[~2014-03-28 18:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-28 18:06 Eric S. Raymond [this message]
2014-03-28 20:40 ` Trying to graft the Aquamacs branch David Reitter
2014-03-29  3:00   ` Eric S. Raymond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140328180657.DC5DB380492@snark.thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=":"@thyrsus.com \
    --cc=david.reitter@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.