You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
git-filter-repo/t/t9390
Elijah Newren 6a6d21aff5 filter-repo: handle implicit parents
fast-import syntax declares how to specify the parents of a commit with
'from' and possibly 'merge' directives, but it oddly also allows parents
to be implicitly specified via branch name.  The documentation is easy
to misread:

  "Omitting the from command in the first commit of a new branch will
   cause fast-import to create that commit with no ancestor."

Note that the "in the first commit of a new branch" is key here.  It is
reinforced later in the document with:

  "Omitting the from command on existing branches is usually desired, as
   the current commit on that branch is automatically assumed to be the
   first ancestor of the new commit."

Desirability of operating this way aside, this raises an interesting
question: what if you only have one branch in some repository, but that
branch has more than one root commit?  How does one use the fast-import
format to import such a repository?  The fast-import documentation
doesn't state as far as I can tell, but using a 'reset' directive
without providing a 'from' reference for it is the way to go.

Modify filter-repo to understand implicit 'from' commits, and to
appropriately issue 'reset' directives when we need additional root
commits.

Signed-off-by: Elijah Newren <newren@gmail.com>
5 years ago
..
basic filter-repo: add some basic tests, with git-style test-lib.sh 6 years ago
basic-filename filter-repo: add some basic tests, with git-style test-lib.sh 6 years ago
basic-mailmap filter-repo: add mailmap handling 6 years ago
basic-numbers filter-repo: add more path-related testcases 6 years ago
basic-replace filter-repo: add text removal (or replacement) via file of expressions 6 years ago
basic-ten filter-repo: add some basic tests, with git-style test-lib.sh 6 years ago
basic-twenty filter-repo: add some basic tests, with git-style test-lib.sh 6 years ago
degenerate filter-repo: add testcases dealing with topology changes 6 years ago
degenerate-globme filter-repo: add testcases dealing with topology changes 6 years ago
degenerate-keepme filter-repo: add testcases dealing with topology changes 6 years ago
degenerate-moduleA filter-repo: add testcases dealing with topology changes 6 years ago
empty filter-repo: handle implicit parents 5 years ago
empty-keepme filter-repo: add testcases dealing with commit pruning 6 years ago
sample-mailmap filter-repo: add mailmap handling 6 years ago
sample-replace filter-repo: add text removal (or replacement) via file of expressions 6 years ago
unusual filter-repo: add coverage for some corner cases and unusual constructs 6 years ago
unusual-filtered filter-repo: add coverage for some corner cases and unusual constructs 6 years ago