(stow.info)Conflicts


Next: Mixing Operations Prev: Deleting Packages Up: Top
Enter node , (file) or (file)node

7 Conflicts
***********

If, during installation, a file or symlink exists in the target tree and
has the same name as something Stow needs to create, and if the
existing name is not a folded tree that can be split open, then a
"conflict" has arisen.  A conflict also occurs if a directory exists
where Stow needs to place a symlink to a non-directory.  On the other
hand, if the existing name is merely a symlink that already points
where Stow needs it to, then no conflict has occurred.  (Thus it is
harmless to install a package that has already been installed.)

   For complex packages, scanning the stow and target trees in tandem,
and deciding whether to make directories or links, split-open or fold
directories, can actually take a long time (a number of seconds).
Moreover, an accurate analysis of potential conflicts requires us to
take into account all of these operations.

7.1 Deferred Operation
======================

Since version 2.0, Stow now adopts a two-phase algorithm, first
scanning for any potential conflicts before any stowing or unstowing
operations are performed.  If any conflicts are found, they are
displayed and then Stow terminates without making any modifications to
the filesystem.  This means that there is much less risk of a package
being partially stowed or unstowed due to conflicts.

   Prior to version 2.0, if a conflict was discovered, the stow or
unstow operation could be aborted mid-flow, leaving the target tree in
an inconsistent state.


automatically generated by info2www version 1.2.2.9