Hi folks, Is my understanding correct, that `git fast-export | git fast-import` should not modify the repository? If yes, then we might have a bug in `git fast-export` if symbolic directory links are removed and converted to a real directory. Consider this test case: # Create test repo git init . mkdir foo echo "foo" >foo/baz git add . git commit -m "add foo dir" ln -s foo bar git add . git commit -m "add bar dir as link" rm bar mkdir bar echo "bar" >bar/baz git add . git commit -m "remove link and make bar dir real" printf "BEFORE: " git rev-parse HEAD # Fast export, import ... that should not change anything! git fast-export --no-data --all --signed-tags=warn-strip \ --tag-of-filtered-object=rewrite | git fast-import --force --quiet printf "AFTER: " I would assume that the BEFORE/AFTER hashes match. Unfortunately, with Git 2.22.0 they do no. The problem is this export output I think: remove link and make bar dir real from :2 M 100644 5716ca5987cbf97d6bb54920bea6adde242d87e6 bar/baz D bar The new file in the `bar` directory is added to the repo first and afterwards the path `bar` is deleted. I think that deletes the entire directory `bar`? If you confirm that this is a bug, then I will try to provide a fix. Thanks, Lars