A few fast export fixups -- round 3
- From
newren@gmail.com <newren@gmail.com>
- Date
- Jun 26, 2009, 04:48 UTC
- Message-ID
- <1245991713-12782-1-git-send-email-newren@gmail.com>
This patch series fixes a few fast-export bugs I have come across, plus some new testcases to verify the fixes, a testcase to document a pre-existing failure, and finally a small addition to the documentation.
Changes since v1: - fixed test issues identified by Johannes Sixt and Stephen Boyd - squashed patch #2 into patch #1
Changes since v2:
- several changes and improvements suggested by Junio (moving code
to different functions, avoiding exporting functionality from
revision.c, improved commit messages)
- new patch to ensure invariants created by setup_revisions are
respected (set revs flags before calling setup_revisions, rather
than after)
- now also catches and omits tags of tags of trees, tags of tags of
tags of trees, etc.
- remove some now-obsoleted code
- There are two new cases I'm aware of in which fast-export produces
broken "(null)" refs; I'm not sure how/where to fix these (or even
what correct behavior is in one of the cases), but they are no worse
than before and I've at least added a test documenting that we know
that there's a case that is (still) broken.Elijah Newren (7):
fast-export: Set revs.topo_order before calling setup_revisions
fast-export: Omit tags that tag trees
fast-export: Make sure we show actual ref names instead of "(null)"
fast-export: Do parent rewriting to avoid dropping relevant commits
fast-export: Add a --tag-of-filtered-object option for newly dangling tags
Add new fast-export testcases
fast-export: Document the fact that git-rev-list arguments are acceptedDocumentation/git-fast-export.txt | 17 +++++++ builtin-fast-export.c | 82 +++++++++++++++++++++++++++++--- t/t9301-fast-export.sh | 96 ++++++++++++++++++++++++++++++++++++- 3 files changed, 187 insertions(+), 8 deletions(-)