From c4458ecdc565fb63cc3247bd1e2d7525d9d6d2fa Mon Sep 17 00:00:00 2001 From: Antoine Pelisse Date: Sat, 6 Apr 2013 19:04:31 +0200 Subject: fast-export: Allow pruned-references in mark file fast-export can fail because of some pruned-reference when importing a mark file. The problem happens in the following scenario: $ git fast-export --export-marks=MARKS master (rewrite master) $ git prune $ git fast-export --import-marks=MARKS master This might fail if some references have been removed by prune because some marks will refer to no longer existing commits. git-fast-export will not need these objects anyway as they were no longer reachable. We still need to update last_numid so we don't change the mapping between marks and objects for remote-helpers. Unfortunately, the mark file should not be rewritten without lost marks if no new objects has been exported, as we could lose track of the last last_numid. Signed-off-by: Antoine Pelisse Reviewed-by: Felipe Contreras Signed-off-by: Junio C Hamano --- Documentation/git-fast-export.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'Documentation/git-fast-export.txt') diff --git a/Documentation/git-fast-export.txt b/Documentation/git-fast-export.txt index d6487e1ce0..feab7a3e4e 100644 --- a/Documentation/git-fast-export.txt +++ b/Documentation/git-fast-export.txt @@ -66,6 +66,8 @@ produced incorrect results if you gave these options. incremental runs. As is only opened and truncated at completion, the same path can also be safely given to \--import-marks. + The file will not be written if no new object has been + marked/exported. --import-marks=:: Before processing any input, load the marks specified in -- cgit v1.2.1