A merge operation involves the combining of data from one or more source files into a target file. A merge operation may be initiated using the Merge tool button on the toolbar, or by choosing the Merge option under the File menu.
When a merge operation is initiated, a dialog is displayed which prompts the user to select the type of merge operation. Two types of merge operations are possible.
The standard merge operation (default selection) is the process of selecting source files from the File List view and merging them into a target file. A standard merge requires the source file(s) to be selected before the merge operation may occur. If at least one source file is not selected prior to the standard merge operation, a dialog is displayed indicating that no files have been selected (i.e., there is no data to merge).
At this point, the user is given the option of selecting all unmerged data files within the current folder, or cancelling the merge operation. If the operation is cancelled, the user is returned to the File List view within E-Merge, where source files may be selected manually and the merge operation may be reattempted. If the Select Unmerged option is chosen, all unmerged single session E-Prime data files are selected (i.e., they become highlighted in the File List view). Once source files are selected, the OK button becomes active, which allows the user to continue with the merge operation.
The next step in any merge operation is to designate or verify the target file into which the data from the source file or files will be merged. The Set Target File dialog is displayed, allowing the user to navigate to the folder containing an existing target file, or to determine the folder into which a new target file will be placed after it is created.
If the target file designated in the Set Target File dialog exists, E-Merge simply reads the file and proceeds with the merge operation. If the named target file does not exist, the user is prompted with a dialog asking whether or not to create the file.
If the user chooses not to create the target file (i.e., selects “no”), the merge operation returns to the Set Target File dialog, and another name may be entered for the target file. If “yes” is selected, the file is created in the directory named within the Set Target File dialog, and the merge operation proceeds.
After the target file is selected and verified, E-Merge checks for low disk space. If disk space is low, a warning is displayed and the user is given the opportunity to cancel the merge operation. If disk space is adequate, E-Merge saves the information necessary to later undo the merge operation. If a merge operation cannot be undone, a warning is displayed prior to the merge operation, and the merge operation may be cancelled. E-Merge supports only one level of undo. Therefore, only the most current merge operation may be undone.
E-Merge then attempts to merge the selected source file(s) into the named target file. Each source file is examined for potential conflicts with the target file (refer to E-MERGE: Conflicts During Merge Operations ). If a conflict occurs, an action must be chosen in order to continue with the merge operation. By default, a Conflict dialog will be displayed for each conflict encountered, and a course of action must be chosen for each conflict individually. Alternatively, the course of action may be set generally for all conflicts prior to the merge operation using the Options command under the View menu. By setting the course of action using this method, the Conflict dialog will not appear when a conflict occurs, and the same course of action will be taken for each conflict encountered.
The options available when setting the course of action prior to the merge operation allow the user to:
- Skip the file causing the conflict and continue with the merge operation
- Stop the merge operation at the point at which the conflict occurred
- Negate the current merge operation.
If the merge operation is stopped at the point of conflict, all files merged prior to the occurrence of the conflict remain merged in the target file. If the merge operation is negated, all files merged prior to the conflict are unmerged.
After checking for conflicts, E-Merge merges the data sessions from the source file(s) into the target file. E-Merge updates each source file by writing an annotation to it indicating the name of the target file into which the source file was merged. This information, useful for tracking the files into which the source file data was merged, may be retrieved by selecting a source file and viewing its Merge Output History (refer to E-MERGE: Merge Output History ).
After the application merges all source files, E-Merge updates or writes the target file to the disk. In addition, E-Merge writes an annotation to the target file indicating the name of the source file(s) merged into the target file. This information, useful for tracking which source files were merged into a target file, may be retrieved by selecting a target file and viewing its Merge Input History (refer to E-MERGE: Merge Input History ).
A recursive merge operation is the process of merging files that reside in the active folder and its sub-folders into a target file. The active folder is the folder selected in the Folder Tree view. The recursive merge differs from the standard merge in two ways. First, the recursive merge does not require the selection of individual files in the File List view. The files to be included in the recursive merge are designated during the merge operation via a dialog. Secondly, the recursive merge operation is not limited to the active folder. The recursive merge operation looks for all files matching the file specification in the active folder and all of its sub-folders.
Like the standard merge, a recursive merge operation may be initiated using the Merge tool button on the toolbar or by choosing the Merge option under the File menu. When asked to select the type of merge operation, click the radio button next to Recursive Merge.
When a recursive merge is run, it is necessary to designate the types of files in the selected folder and sub-folders to merge. The second step of the recursive merge displays the Enter Selection Criteria dialog, which permits the user to set the types of files to be included in the merge operation.
A recursive merge may include .edat3 files, .emrg3 files (or both), and may include files that have never been merged, or were previously merged to a target (or both). Once the criteria are established for the recursive merge, the merge operation proceeds as the standard merge would, with the designation of the target file.