Updating files
When a user is editing a file and another user commits changes of that
file to the repository, the status icons file will indicate a conflict
as shown in figure below.
File
indicating conflict
Before the file can be committed it must be updated with the latest
version from the repository. While updating a file, a number of
conflicts and differences may arise, the different types are described
under Conflicts and Differences below.
Solving conflicts
When focusing on a file it can be updated by clicking on
Update. When clicking on Next the wizard
searches for conflicts between the copy in the edit area and the one
in the repository.
When focusing a directory, the Update wizard will produce a file
listing. After selecting files for update, clicking on Next
will continue to the File status summary which gives the
present status of each file selected.
If the wizard finds several files with conflicts, each file has to
be resolved separately before they can be updated. To resolve a
conflict, one of the files must be chosen from the list. Files who
only contain differences and no conflicts do not need resolving but
can be updated directly.
Conflicts
- Different content types
-
The content types in the files
are different. This conflict must be solved before any of the other
conflicts can be handled, because the methods used for solving
conflicts depend on the content type of the file. When a content type
conflict is resolved, another conflict might arise that is due to
something else.
- Unresolved conflicts
-
The same part is changed in both
files.
Differences
- Conflict-free differences
-
For instance:
New data is added.
Old data is removed.
Old data is replaced by new data.
Status
- No differences
-
Both files are identical.
- Resolved conflicts
-
All conflicts are solved.
- Removed from site
-
File or directory is removed from
the site.
Actions
- Add your file
-
Replace the present version in the
repository. The replaced version will still be available in the log
due to the version control system.
- Discard your file
-
Remove the file from the edit area.
All local changes will be lost permanently.
Navigation help
To help the user navigate the wizard, words and different colors have
been used to represent different aspects:
- Red
-
Represents a conflict and is found in the text to
highlight a conflict and to the left in the wizard.
- Green
-
Represents the edit area. Text on green
background does only exist in the edit area.
- Blue
-
Represents the site repository. Text on blue
background has been added by another user and does not exist in
the edit area.
- Gray
-
Represents old value or content. When defined as
old, it is not considered to be a conflict, only a difference between
the files.
- Old
-
The word Old is set beside an
unselected radio button. It is always represented by gray color.
- Del
-
The word Del is set beside an
unselected radio button. Del implies that the data only exists
in one file.
- Radio buttons
-
A preselected radio button implies that
this is the probable choice the user will make. The update wizard
always assumes the latest changes should be kept, so these radio
buttons are preselected.
The radio button should be selected in front of data to be kept and
the Del button in front of data to be removed. Data with only
an unselected radio button and no Del button in front will be
deleted.
By selecting a file, the wizard shows the conflict resolving mode.
Here, the changes in a file necessary to make an update are made by
choosing what data should be kept and what should be removed.
Conflict-free update example
The image above shows an update situation with only conflict-free
differences.
- Text added by current user.
- Text changed in the repository.
Update example showing conflict
This example shows a conflict where two users have changed the same
part of the content. The radio button in front of the text should be
selected for the text to be kept. When the proper radio buttons are
selected, choose Ok to update the file.
After solving
If several files need to be updated and not all files are conflict
free, an update is still possible since the conflict free files will
be updated. When all updates are finished, the files can be committed.
|