TFS 2013 On-Premises Sprint Board Statuses Customization - visual-studio-2013

In TFS 2013 Web Access when I go to Sprint Board I see only 2 States Active and Closed.
I wanted to add few more statuses like In Progress and Blocked. I downloaded the process Template using the Process editor that is part of TFS Power Tools.
When I looked at the Process Template workflow there is already To do, In Progress, Done and Removed as shown in the figure attached..
But these are not showing up in the Task Work Item. All I see in state dropdown is Active and Closed.
How do I change it so that I see Active, In-Progress, Completed and Blocked States.
Please help.

By default, States on the Sprint board are To Do, In Progress, and Done (assume you're working with scrum project template).
In order to add another state on the Sprint board, you need to:
Run the WITAdmin.exe exportcommonprocessconfig command to export the
common process config from your TFS project.
Customize the file to be similar to the followings:
<TaskWorkItems category=”Microsoft.TaskCategory”>
<States>
<!-->States you want to have<-->
</States>
</TaskWorkItems>
Run the WITAdmin.exe importcommonprocessconfig command to import the customized Common Process Config file back to TFS project.
Please check this blog for the detailed information on how to get it work: http://blogs.msdn.com/b/visualstudiouk/archive/2013/01/19/adding-additional-states-onto-the-agile-task-board-in-tfs2012.aspx
Be note that: states on the Sprint board should be the same as the States defined in the WIT.

Related

What is a good learning resource for TFS and how to use TFS with Visual Studio?

What is a good learning resource for TFS and how to use TFS with Visual Studio?
Specifically, I want to know two things.
Exactly what are the step-by-steps procedures of checking in code. I know that I am required to do a code review. So, after the code review is done by a peer, I understand that this is not enough and the original developer has to click to do something to submit the code into the TFS system. I mean, I want to know precisely what buttons to click on.
I also want to know how to use Visual Studio to look up the actual version. How do I determine the details of what is already checked in?
There are many blogs videos in google. If you want a full detail resource, suggest you directly take a look at our official doc here -- Azure DevOps Server Documentation
A suggested learn order for your reference:
Installation (you could skip this if your company already done this)--
Code -- Build&Release -- Packages-- Test-- Work-- Analysis-- Admin
Tool
TFS supports two types of version control: Git and Team Foundation Version Control (TFVC). One centralized and one distributed. As for which version control system should you use, you could take a look at this thread: Choosing the right version control for your project
For your case, you could easy check the history in server side. It's called changeset in TFVC and commit in Git.
For example, when you check in your changes, they are stored on the server as a changeset. Changesets contain the history of each item in version control.
You can view a changeset to see what the exact file changes were, discover the owner's comments, find linked work items, and see if any policy warnings were triggered.
The same as Git, actually you could find the answer for both question 1&2 in Code part. Hope it helps.

How to group excluded from source control files (TFS, Visual Studio)

Is it possible to group them to a folder (or workitem) or something similar, and how?
edit:
I am asking because sometimes when working on a task I need to jump to another and check in only the other task changes and exclude all others. Later when I get back to the first one I want to be able to resume the work in progress. It is OK if I only jump between two tasks, but if there are 3 and more changes (on a particular task) cannot be tracked fast.
I searched SO but did not find answer, also vs ui does not seem to provide the option.
Visual Studio 2017 Enterprise,
Microsoft Visual Studio Team Foundation Server
Version 15.117.26714.0
What you are doing is not a recommend way in TFS. It's not the really usage of excluded list.You should use Shelveset instead.
Sometimes you need to set aside some or all of your work in progress. Shelvesets are useful when you want to stop work for:
Interruption: You have pending changes that are not ready for check in, but you need to work on a different task.
Collaboration: You have pending changes that are not ready for check in but you need to share them with another team member.
..
You could simply suspend and resume your work from the My Work page, more details please refer this tutorial--Suspend your work and manage your shelvesets

Using Visual Studio Online (VSO) without Visual Studio

I would like to use VSO as App life cycle management (ALM) tool for other platforms, native android development to be specific. I understand that I can use it for sprint planning and related things.
However, I would like to associate my checkins with BLIs/Tasks/Features.
I think if its achievable then raising pull requests should be as per flow.
Yes, it is possible for you to associate checkins with Tasks or Features work items.
You can do it via opening the work item in IE, and go to All Links tab, select LinkTo and choose Changeset link type. See:
If you are using Git repositories in Visual Studio Online, work items are linked to commits by using the notation #1234 using the work item number. The server will see it and automatically associate the work item with ID of 1234 to that commit and use it in other locations like builds, pull requests, etc.
We call the feature "#mention" and you can see more information about it here: https://www.visualstudio.com/en-us/news/2015-jun-3-vso.aspx

Notify developer that the file got overwritten

We are using Microsoft Team foundation server for version control where multiple developers are working on a branch and check in and check out the code.
How can a developer A be notified via email or SMS that his code got overwritten during the checkin by developer B.
Developer A needs to know this ASAP because the code changes of developer A will not work when its deployed into QA.
We are tring to save time in a fast paced development environment and trying to avoid code overwrite issues.
The easiest way to allow continuous parallel development and prevent a checkin from one person breaking the code of others, is to use a CI server. TFS supports this through Team Build.
Though it's preferred to run team build on a dedicated build server, it can be installed side-by-side on your main TFS server and it's possible to install the Controller component centrally and use your developer's workstations as agents.
There are two types of build triggers that can help you out here:
Continuous Integration - this triggers a build of all code directly after every checkin. It will tell you quickly that something did not compile. If you are doing unit tests it can even run these and tell you that a test is failing.
Gated - this will force a developer to shelve his code and will only check in the code when the build of the latest version plus the changes in the shelveset succeed. This may seem even better, as the code in source control will never be in a broken state, but in reality I prefer the ci trigger. The main reason for that us that Gated builds can't happen in parallel (due to their nature) and can actually delay the notification that the code is broken.
You can easily configure email alerts through webaccess on specific build outcomes. You can also configure alerts on source changes, but there is no option to only warn people who have edited these specific files before.
You can also run the Build Notification tool from the task tray to show a notification in Windows.
Though this will not tell the person whose code has just been overwritten that it's no longer working, it will tell the person I rewriting that code that he should pay more attention when checking in ;).
Of course you can configure a team alert that notifies everyone when the build breaks (as that's generally called), and there are funny ways to show the build status through small apps like "siren of shame", which provides a build monitor service that can be connected to a USB alarm-light that turns on and provides noise whenever someone does something stupid.
If you need to avoid this problem during check-in & merge, then I would recommend disabling multiple check-out. This allows file to only be checked out one-at-a-time and can prevent confusion on team projects.
If you need to do farther down the line, you can create TFS Alerts when any code is checked in and sent out to a distribution list, but it would not notify when specific contributions from a specific developer is altered - only a list of altered files during the check-in.

Visual Studio Team Services get changeset comments form web service

We are building a Saas application and would like to have a section of our app that shows release notes, upcoming releases, recent changes. For the last part, it would be great to simply be able to read the comments from our check-in history from VS Team Services and display them within a web page in our app. I know that means we have to write these comments with a customer-facing perspective...we'll deal with that. But just want to reduce having to manually put these updates on our web-page every time we do a change.
Is there any API to this database that you can read from externally?
You can use the Team Explorer API to query changesets and read the comments.

Resources