diff options
Diffstat (limited to 'docs/design.md')
| -rw-r--r-- | docs/design.md | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/docs/design.md b/docs/design.md index 4196894..cfb2c55 100644 --- a/docs/design.md +++ b/docs/design.md @@ -470,10 +470,15 @@ Conflicts between files in the same plan are resolved when planning, so the plan shows final names. An in-plan claim is never displaced: when `overwrite` finds a target another step of the same plan has already claimed, it takes the next free name instead, because that path will hold the other step's output by -the time either runs, and displacing it would destroy that step's result. The -claim set spans the whole run, so two configured directories cannot plan the -same final name. The executor re-checks at execution time; if the -name has to change, the log records the actual name. +the time either runs, and displacing it would destroy that step's result. A +real run applies each directory before planning the next, so a later +directory sees the earlier one's result on disk and its claims end with it. +A dry run (`-n`) applies nothing: its claim set spans every directory, so two +configured directories cannot show the same final name, but each directory is +otherwise planned as if no earlier one had been applied (a file the first +moves into the second is not in the second's plan). The executor re-checks +at execution time; if the name has to change, the log records the actual +name. ## 8. Plan, review, approval |
