TFS CheckIn / CheckOut

Jun 17, 2011 at 3:33 AM

I am really happy to find this project, and hope to see it continue to evolve. There were a number of MSBuild tasks that I am in the process of migrating to the new Workflow Activities. One of the main activities that I need to reproduce is the AssemblyInfo verion increment. I really like this projects approach to the problem:

However, I would actually like to just check the “globalassembleyinfo.cs” file out, preform the action on the file, and then check it back in. I have seen a number of different approaches to this; however few, if any seem to want allow the build server to check-in/check-out any files. I can see a potential issue if using a continuous integration process where this activity could cause an endless build loop. Putting that potential bit of unpleasantness aside, I do have a preference to maintain the GlobalAssemblyInfo file with the overall solution.

So, my question pertains to using the build process to automatically check-out/modify/check-in files during the build process. If this seems like a reasonable suggestion, it’s a feature I would like (I think :)).


Jun 17, 2011 at 6:57 AM

Hi Guillaume is adding that task to this project. You can track progress here:

Jun 17, 2011 at 7:16 AM

Hi kgolding,

As Mike said i'm in the middle of integrating my updateassemblyinfo activity to this project. I'm also writing checkin and checkout activities. With all these you will be able to do what you need. (remember to add in the checkin comment ***NO_CI*** to make sure the checkin doesn't trigger a new CI build, this is a TFS standard).

Jun 17, 2011 at 4:26 PM

That's Great! I did not know about the **NO_CI** comment to prevent the CI build. Can that string be anywhere in the comments or must it be the entire comment. Either way, it might be cool to have that as a bool input on a check-in activity, eg, Supress CI Build on Checkin:True/False

Not having to know even just one more "magic string" would be great :)..

In case anyone else is interested in the ***NO_CI*** thing, this expands on it a bit more.