Re: RFC: Proposing git-filter-repo for inclusion in git.git
- From
Elijah Newren <newren@gmail.com>
- Date
- Aug 23, 2019, 18:29 UTC
- Message-ID
- <CABPp-BFxOA83uL=gsNir5zSgMsfBX6=9+YnWqp+Q4NiztiC6bw@mail.gmail.com>
- In-Reply-To
- <CABPp-BEDOH-row-hxY4u_cP30ptqOpcCvPibwyZ2wBu142qUbA@mail.gmail.com>
On Fri, Aug 23, 2019 at 11:06 AM Elijah Newren <newren@gmail.com> wrote: <snip>
> Safety:
<snip>
Ooh, and another one I remembered just after hitting 'send': * If the user provides a --tag-name-filter that maps multiple tags to the same name, no warning or error is provided; filter-branch simply overwrites each tag in some undocumented pre-defined order (lexicographic) resulting in only one tag at the end. A regression test will fail if you attempt to error out and warn the user, so if you are trying to make a backward compatible reimplementation you have to add extra code to detect collisions and make sure that only the lexicographically last one is rewritten. (fast-import will naturally error out if told to write the same tag more than once, so you have to avoid triggering it.)
<snip>
> Summary of above: Anything compatible with git-filter-branch will be > slower than molasses and extraordinarily unsafe.
<snip.