TortoiseSI 1.0.230.0 User Guide for Integrity™ Lifecycle Manager

Contents



Overview of TortoiseSI

TortoiseSI is a free, open-source Microsoft® Windows® shell extension client for Integrity Lifecycle Manager.

Integrity Lifecycle Manager is a cross-platform, enterprise-class software configuration management and versioning solution.

TortoiseSI exposes Integrity Lifecycle Manager views, source commands, and version-controlled member actions on Windows files and folders through Windows Explorer.

What You Can Do With TortoiseSI

TortoiseSI offers you a light-weight open-source interface to perform various Integrity Lifecycle Manager operations, access Integrity Lifecycle Manager data views, and commit changes to the repository. TortoiseSI displays icon overlays in Windows Explorer to indicate working file status on the file system.

Who is this Guide For?

This guide is intended for anyone interested in accessing Integrity Lifecycle Manager views and performing Integrity Lifecycle Manager operations directly from the Windows Explorer interface.

Since TortoiseSI is a Windows shell extension, this documentation assumes that the user is familiar with and proficient at using Microsoft Windows Explorer.

Developers who are interested in getting involved with the TortoiseSI project can refer to the GitHub TortoiseSI wiki.

TortoiseSI Context Menu

TortoiseSI commands are available from the Windows Explorer context menu, and they are visible when you right-click on a file, folder, or subfolder. The TortoiseSI context menu commands update dynamically based on selection context.

TortoiseSI Context Menu

You can also see the TortoiseSI menu as part of the Windows Explorer File menu.

Installing and Configuring TortoiseSI

TortoiseSI Installation Prerequisites

If you encounter any problems while installing TortoiseSI, or following a TortoiseSI install, please refer to the Troubleshooting Tips section in this document first before contacting us.

Installing TortoiseSI

TortoiseSI comes with a straightforward Setup Wizard installer. Double-click on the installer file and follow the instructions. The installer takes care of the rest.

To download a TortoiseSI release build:

  1. In a browser, navigate to the TortoiseSI GitHub project page.
  2. In the Downloads section, click to download the TortoiseSI install for your operating system platform.
  3. Run the downloaded TortoiseSI MSI installer and proceed through the Setup Wizard.

Updating TortoiseSI

You can install a newer version of TortoiseSI directly on top of an existing installation. You do not need to uninstall your current TortoiseSI application first.

Verifying a Successful Installation

Once TortoiseSI is installed on the system, you can verify that the install was successful by creating a sandbox in Integrity Lifecycle Manager.

  1. Using Windows Explorer, navigate to a folder on the file system.
  2. Right-click on the folder and select the TortoiseSI > Create Sandbox option.

    TortoiseSI Right-Click Option
  3. When prompted, connect to an Integrity Lifecycle Manager server with valid credentials.
  4. When prompted, create a sandbox using Integrity Lifecycle Manager's Create Sandbox Wizard. For details on creating sandboxes in Integrity Lifecycle Manager, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Troubleshooting Tips

Connecting to Integrity Lifecycle Manager Server

TortoiseSI automatically connects to an Integrity Lifecycle Manager server. The specific server is based on your Integrity Lifecycle Manager client preferences.

If you are not prompted to connect to Integrity Lifecycle Manager, verify that the client is running, and that the client application can communicate with an Integrity Lifecycle Manager server.

If TortoiseSI loses its connection to the server, TortoiseSI will work silently in offline mode. To force a connection to the server, perform an operation that requires a server connection, such as viewing a sandbox through Integrity Lifecycle Manager's Sandbox view.

No Icon Overlays

If you are unable to see the TortoiseSI icon overlays on files and folders in Windows Explorer, restart Windows Explorer or reboot the machine.

Unsupported File System Locations

TortoiseSI only supports files located on fixed local drives.

File locations that are not supported by TortoiseSI include optical drives, network drives, and mass storage devices. If a file location is not supported, the TortoiseSI context menu is not visible in Windows Explorer.

Multiple Integrity Lifecycle Manager Clients Installed

If you have more than one Integrity Lifecycle Manager client installed on the machine, TortoiseSI uses the first client on the PATH environment variable. For more information on debugging non-standard configurations, such as running multiple clients, see the GitHub TortoiseSI wiki.

No Integrity Lifecycle Manager Client Installed

If TortoiseSI cannot find a client in the PATH environment variable, the TortoiseSI context menu is not visible in Windows Explorer.

If the Integrity Lifecycle Manager client is uninstalled after TortoiseSI has been installed, the TortoiseSI context menu is visible, but a client communication error displays when you try to perform a TortoiseSI operation. Restart the Explorer.exe process or reboot the machine to hide the TortoiseSI context menu in Windows Explorer.

Managing Integrity Lifecycle Manager Sandboxes with TortoiseSI

Sandbox Overview

Using TortoiseSI, you can perform a number of Integrity Lifecycle Manager sandbox operations.

An Integrity Lifecycle Manager sandbox is a local pointer to an Integrity Lifecycle Manager project residing on the Integrity Lifecycle Manager server.

On the file system, a sandbox functions as a mirror image of a version-controlled Integrity Lifecycle Manager SCM (software configuration management) project. Each Integrity Lifecycle Manager sandbox is actually a collection of pointers to files in the master project. Integrity Lifecycle Manager sandboxes allow you to work locally in your own workspace, without interfering with the work of others.

Note: Where applicable, TortoiseSI commands launch additional Integrity Lifecycle Manager commands, dialogs, and workflows. Integrity Lifecycle Manager operations follow configured Integrity Lifecycle Manager client preferences.

TortoiseSI Sandbox Operations

The following Integrity Lifecycle Manager sandbox operations are available using TortoiseSI. The equivalent Integrity Lifecycle Manager command is listed for each supported TortoiseSI sandbox operation.

For information on Integrity Lifecycle Manager sandbox operations, Integrity Lifecycle Manager commands, or Integrity Lifecycle Manager client preferences, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Sandbox Operation Integrity Lifecycle Manager Operation & Command TortoiseSI Command

Create a Sandbox

Create a private version-controlled project workspace on the file system that mirrors the content of a project on the Integrity Lifecycle Manager server.

Integrity Lifecycle Manager command: si createsandbox

Note: You cannot create sandboxes in other sandboxes (co-located sandboxes) using TortoiseSI. If you previously created co-located sandboxes manually, TortoiseSI may not function as expected in the associated folders on the file system.

TortoiseSI > Create Sandbox

Resynchronize by Change Package

When the members you are resynchronizing have changes that were made in the context of a change package, you can also resynchronize members in a sandbox by change package.

Resynchronizing by change package finds all members that were modified in an associated change package and all change packages that may be associated with the related members. However, only the change packages associated with the specific members you selected to resynchronize are processed.

Caution: Resynchronizing can overwrite local member data and can result in data loss, even when the members are locked. Also, when members are dropped from a project, resynchronizing can delete those members from the file system.

Integrity Lifecycle Manager command: si resync

TortoiseSI > Resynchronize by Change Package

  • Select a folder in a project: All files and subfolders within the version-controlled folder are resynchronized.
  • Select files in a project: Selected files are resynchronized.

Resynchronize a Folder

Resynchronize the contents of a sandbox in a project.

Caution: Resynchronizing can overwrite local member data and can result in data loss, even when the members are locked. Also, when members are dropped from a project, resynchronizing can delete those members from the file system.

Integrity Lifecycle Manager command: si resync

TortoiseSI > Resynchronize

  • Select a folder or subfolder in a project: All files within the version-controlled folder are resynchronized. You can choose to recurse into subprojects for the resynchronize operation.

Drop a Sandbox

Disconnect a sandbox from a project.

Tip: During the drop sandbox operation, you can choose to leave the folder and its contents on the file system. You can continue working on those files; however, they will no longer be associated with Integrity Lifecycle Manager.

Integrity Lifecycle Manager command: si dropsandbox

TortoiseSI > Drop Sandbox

Select a folder in a project.

Drop a Subproject.

Removes a subproject from a project.

Notes:

  • After you remove a subproject from a project, it is no longer listed as part of the Sandbox or master project, but the subproject’s history remains in the project record, in case you need to recreate an earlier version of the project.
  • When you remove a subproject, you also remove all members within that subproject.

Integrity Lifecycle Manager command: si dropproject

TortoiseSI > Drop Sub-Project

Select a folder in a project.

Retarget a Sandbox

Retarget a selected sandbox to change the Integrity Lifecycle Manager project configuration that the sandbox points to.

For example, you can retarget the sandbox to point to a different variant project or a different checkpoint revision.

Integrity Lifecycle Manager command: si retargetsandbox

Note: The Retarget Sandbox operation does not change the project or server for a sandbox, nor does it change the location of a sandbox in Integrity Lifecycle Manager.

TortoiseSI > Retarget Sandbox

Select a folder in a project.

Submit Changes to the Repository

Review a summary of all changes made on disk, and then submit those changes to the repository using Integrity Lifecycle Manager’s Working File Changes view.

See the section Committing Changes to the Repository for details.

TortoiseSI > View Working File Changes

Select a folder in a project.

Working with Files as Integrity Lifecycle Manager Members

Members Overview

With TortoiseSI, you can perform a number of Integrity Lifecycle Manager member operations for Integrity Lifecycle Manager version-controlled projects. Member operations are applied to the version-controlled project in Integrity Lifecycle Manager after the related change package is submitted.

Note: Where applicable, TortoiseSI commands launch additional Integrity Lifecycle Manager commands, dialogs, and workflows. Integrity Lifecycle Manager operations follow configured Integrity Lifecycle Manager client preferences.

TortoiseSI Member Operations

The following member operations are available using TortoiseSI. The equivalent Integrity Lifecycle Manager command is listed for each supported TortoiseSI member operation.

For information on Integrity Lifecycle Manager member operations, Integrity Lifecycle Manager commands, or Integrity Lifecycle Manager client preferences, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Member Operation Integrity Lifecycle Manager Operation & Command TortoiseSI Command

Add

Add a member or multiple members to a project.

Once you add members to a project, you can check out the members for editing, and then check in the members to preserve your changes.

Integrity Lifecycle Manager command: si add

TortoiseSI > Add

Select a file or multiple files in a project.

Drop

Remove a member or multiple members from a project.

After dropping members, the member’s history remains in the project in case you need to re-create a version of the project later.

Tip: During the drop member operation, you can choose not to delete the member from the file system. That member remains visible as a former member.

Integrity Lifecycle Manager command: si drop

TortoiseSI > Drop

Select a file or multiple files in a project.

Lock

Lock a member or multiple members in a project to prevent other users from checking in changes to the same revision you are working on.

Typically, members are locked when you check out members to a sandbox. However you may have made changes to a working member that you did not check out. You can set a lock on the working member without overriding your changes.

Integrity Lifecycle Manager command: si lock

TortoiseSI > Lock

Select a file or multiple files in a project.

Resynchronize a File

Resynchronize the contents of a file

Caution: Resynchronizing can overwrite local member data and can result in data loss, even when the members are locked. Also, when members are dropped from a project, resynchronizing can delete those members from the file system.

Integrity Lifecycle Manager command: si resync

TortoiseSI > Resynchronize

  • Select files in a project: Selected files are resynchronized.

Resynchronize by Change Package

Resynchronize members in a project by change package to update out of sync working members to the most current member revisions.

For details, see Resynchronize by Change Package in the TortoiseSI sandbox Operations section.

TortoiseSI > Resynchronize by Change Package

Select a file or multiple files in a project.

Check In

Check in a member or multiple members from a sandbox to preserve your changes.

Checking in a member creates a new revision of the member (or creates a new branch) in Integrity Lifecycle Manager and adds the revision to the member history.

Integrity Lifecycle Manager command: si ci

TortoiseSI > Check In

Select a file or multiple files in a project.

Check Out

Check out a working revision of a member or multiple members from a version-controlled Integrity Lifecycle Manager project that you want to work on in a sandbox.

When you check out a revision, the revision is copied to your local sandbox where you can view or modify its contents.

By default, when you check out a revision, a lock is placed on the member in Integrity Lifecycle Manager, though this is configurable in the Integrity Lifecycle Manager client.

Integrity Lifecycle Manager command: si co

TortoiseSI > Check Out

Select a file or multiple files in a project.

Revert

Revert a member or multiple members to discard your changes in the sandbox.

When you revert members, your local working file is updated to match the working revision from the version-controlled Integrity Lifecycle Manager project.

Integrity Lifecycle Manager command: si revert

TortoiseSI > Revert

Select a file or multiple files in a project.

Move

Move a member or multiple members between sandboxes.

Integrity Lifecycle Manager command: si move

Notes:

  • TortoiseSI moves the files as a single move member operation.
  • Manually cutting and pasting or dragging and dropping files on the file system appear as a drop operation and an add operation.
  • Moved file status information, which is available via TortoiseSI File Properties, is visible only for deferred operations.

TortoiseSI > Move

Select a file or multiple files in a project.

Rename

Rename a member in your sandbox.

Integrity Lifecycle Manager command: si rename

Note: Renamed member status information, which is available via TortoiseSI File Properties, is visible only for deferred operations.

TortoiseSI > Rename

Select a file in a project. Single file selection only.

Merge Conflicts

Merge conflicting changes into the member revision, and create a new revision with the resulting contents. The merge result overwrites your working member on the file system.

The merge conflicts option is only available when a member conflict is present.

Integrity Lifecycle Manager command: si merge

TortoiseSI > Merge Conflicts

Select a file in a project. Single file selection only.

Committing Changes to the Repository

You can use Integrity Lifecycle Manager’s Working File Changes view to compare an Integrity Lifecycle Manager version-controlled project against the file system. The Working File Changes view lists all of the files, folders, and subfolders that have been added, updated, or deleted.

When you are ready to commit changes to the repository, right-click on an Integrity Lifecycle Manager sandbox and select TortoiseSI > View Working File Changes to access the Working File Changes view in the client.

You can also use the Working File Changes view to:

For more information on Integrity Lifecycle Manager change packages and the Working File Changes view, see the PTC Integrity User Guide or the Integrity Lifecycle Manager Help Center.

Notes:

Getting More Out of TortoiseSI

TortoiseSI View Operations

With TortoiseSI, you can perform a number of Integrity Lifecycle Manager view operations on files in your sandbox for Integrity Lifecycle Manager version-controlled projects.

The following view operations are available using TortoiseSI. The equivalent Integrity Lifecycle Manager command is listed for each supported TortoiseSI view operation.

For information on Integrity Lifecycle Manager view operations or Integrity Lifecycle Manager commands, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

View Operation Integrity Lifecycle Manager Operation & Command TortoiseSI Command

View Member Differences

Compare a working member in a sandbox to the member revision in the repository to review the differences between the two revisions.

Integrity Lifecycle Manager command: si diff

TortoiseSI > Member Differences

Select a file in a project. Single file selection only.

View Member History

Review detailed information about each revision and all the changes made to a member since the member was put under version control.

Integrity Lifecycle Manager command: si viewhistory

TortoiseSI > Member History

Select a file in a project. Single file selection only.

View Annotated Revision

Instead of reviewing revision details individually, you can review revision details for all changes to a specific file in an annotated view of the file contents.

For example, you can identify which revision introduced a particular line of code.

Note: Annotated details include only added or changed content per revision. Deleted content is not displayed.

Integrity Lifecycle Manager command: si annotate

TortoiseSI > Annotated Revision

Select a file in a project. Single file selection only.

View Member Information

Display information for a member in a sandbox, including Integrity Lifecycle Manager project and path details, member revision details, and more.

Integrity Lifecycle Manager command: si memberinfo

TortoiseSI > Member Information

Select a file in a project. Single file selection only.

View Sandbox

Open the contents of a sandbox in Integrity Lifecycle Manager's Sandbox view. The Sandbox view displays project members and subprojects in a tree structure.

Integrity Lifecycle Manager command: si viewsandbox

TortoiseSI > View Sandbox

Select a folder in a project.

View Related Change Packages

Review all change packages containing members that belong to a specific project branch.

Integrity Lifecycle Manager command: si viewcps

TortoiseSI > Related Change Packages

Select a folder or subfolder in a project.

View Project History

Review the history of a project since it was put under version control, including detailed information for a selected checkpoint.

Integrity Lifecycle Manager command: si viewprojecthistory

TortoiseSI > Project History

Select a folder or subfolder in a project. Single selection only.

View Project Differences

Compare the member or change package changes made to a project between two checkpoints, or compare the changes made between a checkpoint and the working project.

Notes:

  • You can only compare project checkpoints that are within a single line of development. You cannot compare project checkpoints across branches.
  • To see changes between two specific checkpoints, use TortoiseSI to run the View Project History command first. Then, in Integrity Lifecycle Manager’s Project History view, select two checkpoints to compare, and run Integrity Lifecycle Manager's View Project Differences command.

Integrity Lifecycle Manager command: si mods

TortoiseSI > Project Differences

Select a folder or subfolder in a project. Single selection only.

View My Change Packages

Review a list of all change packages you have created that contain entries that have not been committed to the repository.

In Integrity Lifecycle Manager's My Change Packages view, you can manage your change packages as follows:

  • View a change package and its entries.
  • Submit any deferred operations for a change package.
  • Create, edit, and close a change package.

Integrity Lifecycle Manager command: si viewcps

TortoiseSI > My Change Packages

Select a file or a folder in a project. No selection or multiple selections are also supported.

View My Reviews

Display a list of all change packages that have been submitted and that are ready for you to review.

Integrity Lifecycle Manager command: si viewcps

TortoiseSI > My Reviews

Select a file or a folder in a project. No selection or multiple selections are also supported.

View My Locks

Review all of the members that you have locked across all projects.

Integrity Lifecycle Manager command: si locks

TortoiseSI > My Locks

Select a file or a folder in a project. No selection or multiple selections are also supported.

View Working File Changes

Review a summary of all files, folders, and subfolders that have been added, updated, or deleted on the file system.

You can also use this view to submit changes to the repository. See the section Committing Changes to the Repository for details.

TortoiseSI > Working File Changes

Select a folder in a project.

TortoiseSI Icon Overlays

TortoiseSI status indicators appear as icon overlays on Integrity Lifecycle Manager version- controlled files in Windows Explorer. These icon overlays show you, at a glance, what has been modified on the file system.

The following table lists the TortoiseSI file icon overlays available for each Integrity Lifecycle Manager member status.

For more information on Integrity Lifecycle Manager member status, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Integrity Lifecycle Manager Member Status TortoiseSI File Icon Overlay Limited File Icon Overlay Subset

Add Member

A blue plus sign indicates files that exist in a file system folder that are not yet members of a version-controlled Integrity Lifecycle Manager project.

Add Icon Overlay

Modified, Moved, Renamed Icon Overlay

Drop Member or Former Member

A red X icon indicates files that have been deleted and dropped from a version-controlled Integrity Lifecycle Manager project.

Note: A local copy of the dropped file, called a Former Member, may remain in the sandbox.

Drop or Former Icon Overlay

Modified, Moved, Renamed Icon Overlay

Member

A green checkbox icon indicates files that correspond to members of an Integrity Lifecycle Manager version-controlled sandbox.

Member Icon Overlay

N/A

Locked Member

A yellow lock icon indicates files that have been locked in an Integrity Lifecycle Manager version-controlled project.

Locked Icon Overlay

Modified, Moved, Renamed Icon Overlay

Modified Member, Moved Member, Renamed Member or Merge Needed

A red exclamation mark icon indicates files that have been modified and require a merge, files that have been moved, or files that have been renamed locally on the file system.

Modified, Moved, Renamed Icon Overlay

N/A

Incoming Member Conflict

A yellow exclamation mark icon indicates files that are currently out of synchronization with the Integrity Lifecycle Manager version-controlled project (including files have been modified locally and remotely, or files that have unresolved merge operations).

Further action is required in Integrity Lifecycle Manager for file conflicts.

Incoming Conflict Icon Overlay

Modified, Moved, Renamed Icon Overlay

Notes:

Viewing TortoiseSI Folder Properties

To display Integrity Lifecycle Manager project or subproject properties for a project under version control, right-click on a folder and select Properties > TortoiseSI.

Note: The TortoiseSI tab is not visible for folders that are not in a version-controlled Integrity Lifecycle Manager project.

The following Integrity Lifecycle Manager Configuration Management properties are displayed.

Property Description

Development Path

The name of a particular branch of software development. Changes made through a specific development path are kept separate from the main development trunk unless you choose to merge them later.

Project Name

The path and name of a project specified as a flat string.

Sandbox Name

The location of the sandbox specified as a flat string.

Server

The name of the host server where the Integrity Lifecycle Manager server is located.

Checkpoint

The current revision number and the date when the project was last checkpointed. Checkpointing adds a new revision of the project to the project history.

For more information on working with Integrity Lifecycle Manager projects and subprojects, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Viewing TortoiseSI File Properties

To display Integrity Lifecycle Manager member properties for a file under version control, right-click on a file and select Properties > TortoiseSI.

Note: The TortoiseSI tab is not visible for files that are not in a version-controlled Integrity Lifecycle Manager project.

The following Integrity Lifecycle Manager Configuration Management properties are displayed.

Property Description

Member Revision

The default revision that users work with in sandboxes for this file.

Working Revision

The revision number the selected member is based on.

Working CP ID

The change package ID containing the operations for the member.

Lock Name
Lock CP Id
Lock Type

The name of the user locking the member revision.
The change package ID associated with the lock.
The type of lock on the member.

When multiple locks exist, lock information is logically grouped together.

Status

The Integrity Lifecycle Manager member status, such as a deferred operation.
Multiple statuses are pipe-delimited.
Status information for moved and renamed members is available only for deferred operations.
This information may correspond to sandbox icon overlays visible in the Integrity Lifecycle Manager client.

Sandbox Name

The path to the Integrity Lifecycle Manager sandbox that contains the file.

For more information on working with Integrity Lifecycle Manager members, see the PTC Integrity User Guide, Integrity Lifecycle Manager Help Center, or Integrity Lifecycle Manager CLI man pages.

Excluding Files

You can use TortoiseSI to exclude uncontrolled files in a sandbox from appearing in selections when adding members to a version-controlled Integrity Lifecycle Manager project.

For example, you may want to avoid adding specific DLL files or all EXE files when performing a member add operation. You do not want to have to remember to exclude files manually. Excluding a specific filename or a file pattern adds that exclusion as an Integrity Lifecycle Manager Non-Member Files exclusion filter preference in the client.

To remove a file pattern exclusion filter, right-click on a non-member file that currently matches a file pattern entry in the exclusion filter, and select TortoiseSI > Remove from Exclude Filter > [file pattern].

Contacting Us

This release product is a work in progress. Both the TortoiseSI product and this documentation are subject to change.

Details about how to contribute to the TortoiseSI project can be found on the TortoiseSI GitHub project page and the GitHub TortoiseSI wiki.

Contact PTC Technical Support through the PTC Integrity eSupport portal for problems/questions about the integration or raise a new issue/enhancement request on the GitHub TortoiseSI issue tracker. See GitHub TortoiseSI issue tracker for more information on issue status, including known and fixed issues.