Import TFS / TFVC Commits to Targetprocess
This article describes how to set up Targetprocess one-way integrations for automatic import of source control commits from Team Foundation Server (TFS) or Team Foundation Version Control (TFVC).
When a TFS integration is set up, TFS users are able to update Targetprocess work items when they submit commits to Version Control repositories. They update entity states, submit time records, and post comments using special shortcut commands.
The integration does not connect TFS and Targetprocess work items directly. To syncronize the items, consider using integration performed within third-party Tasktop data connector.
Supported TFS versions
Targetprocess TFS Integration supports Microsoft Visual Studio Team Services (VSTS, visualstudio.com), Microsoft TFS 2010 and higher.
Team Foundation Version Control (TFVC) service hosted at VSTS is supported starting with the Targetprocess v3.6.0 release. Detailed information specific to VSTS users is here: Import Git / TFVC Version Control Commits from VSTS to Targetprocess.
Integration profile setup
Only Administrators in Targetprocess have permissions to configure plugins.
To set up TFS integration, go to Settings → Plugins, and add a new TFS Integration profile:
There are two ways to specify a working repository:
- The URI includes a reference to a TFS Project collection. In this case, revisions for all the Project Teams in this collection will be processed
- The URI includes a reference to just one TFS Project Team. Only the revisions from the specified Project Team will be processed.
The URL to TFS repository should include port number, for example:
When emails of your project members in TFS and Targetprocess are different, you should map TFS emails to Targetprocess user accounts in Targetprocess TFS plugin profile settings. The users will be treated as Unknown in Targetprocess otherwise.
Commits created by unknown users are successfully attached to Source tabs of Targetprocess work items. However, no further actions such as state change, comment submit, time spent record post are performed with work items.
By default, users in TFS and Targetprocess are mapped automatically if one of the following is true:
- TFS User Domain Name is like: “DomainUserName” = TP Active Directory User name
- TFS User Name w/o domain prefix = TP Login
Otherwise, you need to map users:
As soon as the profile is created, Targetprocess will import TFS revisions starting from the revision number you’ve specified. This can take several minutes. You can track the import status in the log:
Now, as you do a commit to Microsoft Visual Studio, just add a comment in any of these formats:
|Change entity states||#ID (or id:ID) state:fixed|
|Add comments to defect||#ID comment: text of your comment here|
|Add spent time||#ID time:1|
|Add spent and remaining time||#ID time:4:8|
|Update several entities at a time||#ID, #ID comment: will not be fixed state: invalid time:0.5|
|All possible actions||#456, #887 state:done time:3:0 comment:whoa! Everything is completed!|
Make sure you enter the commit messages as shown above. Neither comments, nor time entries, nor states will update if the format is incorrect. Special words like comment or state are case sensitive, so you cannot use "Comment:" starting with capital "C" in your commit message.
Multi-line comments are not supported at the moment.
In this example, as soon as the commit is done, the status of the entity with ID=128 will be changed to Done, and the comment "Should be included to the current release," spent time = 1 hour and remaining time = 2 hours will be added to the entity.
You can see all the updates from TFS in the Source tab:
Make sure you enter comments in the correct format as shown above. Neither comments, nor time entries, nor the states will update if the format is incorrect.
You can convert the old TFS plugin profiles to the new ones (recommended). The “Convert to new profile” option is available for all the old plugins:
As soon as the conversion is done, the old profile is disabled. The new profile will resume syncing from the last processed revision number.
Still have a question?
We're here to help! Just contact our friendly support team