From: Adam Mercer <ramercer@gmail.com>
To: Thomas Rast <trast@student.ethz.ch>
Cc: git@vger.kernel.org
Subject: Re: Using filter-branch to move repo contents in subdirectory
Date: Thu, 29 Jul 2010 14:15:31 +0100 [thread overview]
Message-ID: <AANLkTin5sv8NQ_8NZkQpW9HG4zYZDZHNF80EWK8Km4Mr@mail.gmail.com> (raw)
In-Reply-To: <201007291508.05242.trast@student.ethz.ch>
On Thu, Jul 29, 2010 at 14:08, Thomas Rast <trast@student.ethz.ch> wrote:
> Adam Mercer wrote:
>> $ git filter-branch --index-filter \
>> 'git ls-files -s | sed "s-\t\"*-&sftlib/-" |
>> GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
>> git update-index --index-info &&
>> mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
>> Rewrite 223651f2ebd5d5d9341bcfc9e7cb6caaa3f4d171 (56/65)Ignoring path
>> 00bootsftlib/
>
> What OS is this?
This was on Mac OS X 10.6. Where sed is BSD sed.
> You seem to have a 'sed' version where \t does not
> match the horizontal tab character, or a shell that replaces the '\t'
> inside a double-quoted string with simply 't'.
>
> As a short-term fix, you can try to replace it with $(printf '\t')
> which should always give a tab character. You need to quote the '
> though, so that's
>
> $ git filter-branch --index-filter \
> 'git ls-files -s | sed "s-$(printf '\''\t'\'')\"*-&sftlib/-" |
> GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
> git update-index --index-info &&
> mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
Thanks, that did the trick!
> As for the actual issue: 'man 1p sed' on my system claims
>
> * The escape sequence '\n' shall match a <newline> embedded in the pat-
> tern space. A literal <newline> shall not be used in the BRE of a con-
> text address or in the substitute function.
>
> but does not mention \t at all, so I guess either that manpage is
> wrong or GNU sed is not POSIX compliant even with --posix (where it
> still treats \t as a tab).
Also using the original command, but specifying GNU sed also does the trick.
Cheers
Adam
next prev parent reply other threads:[~2010-07-29 13:15 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-29 12:37 Using filter-branch to move repo contents in subdirectory Adam Mercer
2010-07-29 13:08 ` Thomas Rast
2010-07-29 13:15 ` Adam Mercer [this message]
2010-07-29 13:24 ` [PATCH] filter-branch tests/docs: avoid \t in sed regexes Thomas Rast
2010-07-29 14:47 ` Tomas Carnecky
2010-07-29 14:52 ` Thomas Rast
2010-07-29 15:02 ` Tomas Carnecky
2010-07-29 15:10 ` [PATCH] t7005: fix subdirectory-filter test Thomas Rast
2010-07-29 15:12 ` Thomas Rast
2010-08-09 19:36 ` Using filter-branch to move repo contents in subdirectory Adam Mercer
2010-08-11 15:01 ` Adam Mercer
2010-08-11 19:32 ` Jeff King
2010-08-11 19:59 ` Adam Mercer
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=AANLkTin5sv8NQ_8NZkQpW9HG4zYZDZHNF80EWK8Km4Mr@mail.gmail.com \
--to=ramercer@gmail.com \
--cc=git@vger.kernel.org \
--cc=trast@student.ethz.ch \
/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).