NAME
SVK::Editor::Merge - An editor that does merges for the storage editor
SYNOPSIS
$editor = SVK::Editor::Merge->new
( anchor => $anchor,
base_anchor => $base_anchor,
base_root => $fs->revision_root ($arg{fromrev}),
target => $target,
storage => $storage_editor,
%cb,
);
DESCRIPTION
Given the base root and callbacks for local tree, SVK::Editor::Merge forwards the incoming editor calls to the storage editor for modifying the local tree, and merges the tree delta and text delta transparently.
PARAMETERS
options for base and target tree
- anchor
-
The anchor of the target tree.
- target
-
The target path component of the target tree.
- base_anchor
-
The anchor of the base tree.
- base_root
-
The root object of the base tree.
- storage
-
The editor that will receive the merged callbacks.
- allow_conflicts
-
Close the edito instead of abort when there are conflicts.
- open_nonexist
-
open the directory even if cb_exist failed. This is for use in conjunction with SVK::Editor::Rename for the case that a descendent exists but its parent does not.
- inspector
-
The inspector reflecting the target of the merge.
callbacks for local tree
Since the merger needs to have information about the local tree, some callbacks must be supplied.
- cb_rev
-
Check the revision of the given path.
- cb_conflict
-
Called when a conflict is detected.
- cb_prop_merged
-
Called when properties are merged without changes, that is, the
g
status. - cb_merged
-
Called right before closing the top directory with storage editor, root baton, and pool.
- cb_closed
-
Called after each file close call.