Command 'Include externals to project', Command 'Include externals'Permalink

Symbol: _svn_icon_status_external

Function: These commands open the dialog “Include externals”.

Call:

  • Menu bar: “Project  SVN”.

  • Context menu: “SVN”

Requirement: An object is selected in the object tree. The external objects are linked below that. If you have selected nothing or the project root directory, then the command “Include externals to project” is available. If you have selected an object, then the command “Include externals” is available.

The same external objects cannot be linked multiple times at different locations in the same project. This leads to problems in CODESYS because of conflicts with the internal identification of the object.

Dialog 'Include externals'

Table 952: “URL of SVN repository”

_svn_img_input_field_url_externals

URL of the external object that is linked. The object to be linked is versioned and can have sub-objects.

External objects are located at another location in the SVN repository than the project. It can even be in another SVN repository.

Example: ‎file:///D:/SVN repo A/trunk/DSTest.project/GlobalTextList‎

Note: The objects that should be linked below the selected object must have a matching object type. For example, only a task can be linked below the “Task configuration” object.

_svn_button_revision

Opens the dialog “Select revision”. Here you can select a revision.

The button is labeled with the currently selected revision:

  • “HEAD”: Newest revision (top revision). Default

  • “15”: Revision number of the selected revision

  • “12/23/2016 11:59:59 (UTC)”: Change date of the selected revision (UTC)

Note: The dialog provides the same options as the “Revision” group.

_svn_button_three_dots

Opens the “SVN repository browser” dialog Here you can browse the SVN repository.

Table 953: “Revision”

Options for selecting a revision

Note: the current valid selection is also displayed in the buttons next to the SVN repository URL.

“HEAD”

_icon_radiobutton_acitvated: Latest revision (top revision) selected in a branch.

“Revision”

_icon_radiobutton_acitvated: A specific revision by the revision number.

Example: ‎3‎

“Date”

_icon_radiobutton_acitvated: A specific revision by the modification date.

Example: ‎12/23/2016 11:59:59‎

“Use UTC Time”:

_cds_icon_option_activated: Modification date in universal time.

“OK”

Adds the external object and its sub-objects with the property ‎svn:externals‎ to your project (below the selected object). The working copy is updated and the external object is overlaid with the _svn_icon_status_external symbol.

Example: _svn_img_external_objekt (external device ‎Source‎)

Note: If the linking fails (for example when adding a device below a task configuration), then the complete operation fails and reverts back.

Note: Renaming or moving individual external objects is permitted inly within an external tree, whereby it is not permitted to move the top object.

To move a complete tree, you have to remove it and link it to another location.

“... You should seriously consider using explicit revision numbers in all of your externals definitions. Doing so means that you get to decide when to pull down a different snapshot of external information, and exactly which snapshot to pull. Besides avoiding the surprise of getting changes to third party repositories that you might not have any control over, using explicit revision numbers also means that as you backdate your working copy to a previous revision, your externals definitions will also revert to the way they looked in that previous revision, which in turn means that the external working copies will be updated to match the way they looked back when your repository was at that previous revision. For software projects, this could be the difference between a successful and a failed build of an older snapshot of your complex codebase. ...”

This is cited from:

‎⮫ http://svnbook.red-bean.com/nightly/en/svn.advanced.externals.html).