This assertion is triggered by a bug in "cg-object-id -p", which ignores grafts, when we attempt to rewrite a grafted commit whose original parent does not get rewritten. Dying here prevents to leave the user with a corrupted rewriten history. Signed-off-by: Yann Dirson <ydirson@xxxxxxxxxx> --- cg-admin-rewritehist | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cg-admin-rewritehist b/cg-admin-rewritehist index 958a8ab..8dd33f2 100755 --- a/cg-admin-rewritehist +++ b/cg-admin-rewritehist @@ -218,9 +218,13 @@ while read commit; do parentstr= for parent in $(cg-object-id -p $commit); do - for reparent in $(cat ../map/$parent); do - parentstr="$parentstr -p $reparent" - done + if [ -r "../map/$parent" ]; then + for reparent in $(cat "../map/$parent"); do + parentstr="$parentstr -p $reparent" + done + else + die "assertion failed: parent $parent for commit $commit not found in rewritten ones" + fi done if [ "$filter_parent" ]; then parentstr="$(echo "$parentstr" | eval "$filter_parent")" - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html