git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Geoff Russell" <geoffrey.russell@gmail.com>
To: "Bob Hiestand" <bob.hiestand@gmail.com>
Cc: git@vger.kernel.org, "Johannes Schindelin" <Johannes.Schindelin@gmx.de>
Subject: Re: exporting the last N days of a repository
Date: Wed, 5 Nov 2008 14:24:06 +1030	[thread overview]
Message-ID: <93c3eada0811041954i24a15e33tcdd89f50c162b8d2@mail.gmail.com> (raw)
In-Reply-To: <cc29171c0811041618jfbcb293l42a19805f06803a0@mail.gmail.com>

On Wed, Nov 5, 2008 at 10:48 AM, Bob Hiestand <bob.hiestand@gmail.com> wrote:
> On Tue, Nov 4, 2008 at 4:49 PM, Geoff Russell
> <geoffrey.russell@gmail.com> wrote:
>> Apologies to Johannes and Bob who have tried to help
>> but I'm still having difficulties, here is my current non-working script:
>>
>> ------------------------------------------------------------------
>> #!/bin/sh
>> DIR=/tmp/gitdemo
>> # for testing just arbitrarily
>> # select the 15th most recent commit as our new origin
>> NEWORIGIN=$(git rev-list master@{15} | head -1)
>> echo $NEWORIGIN
>> # checkout earlist point we are interested in
>> # we want to drop any history before this point
>> git checkout $NEWORIGIN
>> # now make a new directory, initialise with new origin
>> # and apply all commits after that point
>> mkdir $DIR && (cd $DIR ; git init) &&  \
>>    rsync -aHv --exclude=.git ./ $DIR && \
>>    (cd $DIR ; git add . ; git commit -m "starting point" </dev/null ) && \
>>    git fast-export $NEWORIGIN..master | (cd $DIR ; git fast-import )
>>
>> ----------------- end of script
>>
>> The fast-import gives me a message I don't understand and doesn't
>> do the import.
>
> If I understood your requirement (I know nothing about fast-export),
> it would look like this:
>
> #!/bin/sh
> DIR=/tmp/gitdemo
> ORIGDIR=$PWD
> git checkout -b shorthistory
> NEWORIGIN=$(git rev-list --since='5 months ago' --reverse HEAD| head -1)
> echo $NEWORIGIN
> git filter-branch --parent-filter '
>        test $GIT_COMMIT = '$NEWORIGIN' &&
>        echo || cat' \
>        --tag-name-filter cat $NEWORIGIN^..
> mkdir $DIR
> cd $DIR
> git init
> git fetch $ORIGDIR shorthistory:master

Thanks Bob but when I ran your version (using master@{15} instead of
--since =...) it
effectively dropped the recent history, not the old history. Imagine a sequence
of 30 commits, no branches.  I want to keep, for example, 15 through
30 and dump 1
to 15.  So I need to have the working directory as at commit 15 and
then all the changes
to bring it up to 30.

       ... 11--12--13--14--15 ... 28--29--30

       ... Dump 1 to 15           keep 15 to 30.

Your script kept 1 to 15 and dumped the rest.

Cheers,
Geoff.




>
>
> Thank you,
>
> bob
>



-- 
6 Fifth Ave,
St Morris, S.A. 5068
Australia
Ph: 041 8805 184 / 08 8332 5069

  reply	other threads:[~2008-11-05  4:03 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-29  1:01 exporting the last N days of a repository Geoff Russell
2008-10-29 15:10 ` Johannes Schindelin
2008-11-03  1:16   ` Geoff Russell
2008-11-03  6:51     ` Johannes Schindelin
     [not found]     ` <cc29171c0811030855s2fb0d7a5ncdfdd6acd7c71537@mail.gmail.com>
2008-11-04 22:49       ` Geoff Russell
2008-11-05  0:18         ` Bob Hiestand
2008-11-05  3:54           ` Geoff Russell [this message]
2008-11-05 19:49             ` Bob Hiestand

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=93c3eada0811041954i24a15e33tcdd89f50c162b8d2@mail.gmail.com \
    --to=geoffrey.russell@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=bob.hiestand@gmail.com \
    --cc=git@vger.kernel.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).