4 Replies Latest reply on Apr 27, 2009 4:39 PM by gthinshaw

    RoboHelp with TFS


      I've just set up RoboHelp 7 to use Team Foundation Server 2008 as our source control / version control server.

      As I couldn't find a step-by-step guide to this anywhere, I'll just document that we did this after a few detours

      - I first installed RoboSource and discovered that it won't play with our TFS box, short of me being made an admin there
      - A bit more reading, and discovered that there was a VSS compatibility option
      - Downloaded and installed the MSSCCAPI component ( http://www.microsoft.com/downloads/details.aspx?FamilyID=faeb7636-644e-451a-90d4-7947217da 0e7&DisplayLang=en) to provide VSS-compatible access to TFS 2008.
      - Tried to get RoboSource to use MSSCCAPI, realised this was the wrong approach
      - Un-installed RoboSource and simply used RoboHelp client to create a new project in a folder with a TFS mapping
      - Fixed "Server busy" infinite loop error using a fix from http://blogs.msdn.com/michalma/archive/2008/04/03/msscci-with-robohelp.aspx

      We now have a situation where we can both work on the same project, and we can see the source-control status of each file in the project, displayed in the File Status window. Typically this is blank or shows that the file has been checked out for edit - that is, non-exclusively

      My questions are,

      [1] is there a way of implementing exclusive file locking from within the RoboHelp HTML client? (I can do this from Visual Studio - RoboHelp shows the exclusive lock and prevents any attempt to edit a file exclusively locked by another user)
      [2] is it possible to work round non-exclusive locking for operations like ToC edits, which update several files at once?
        • 1. Re: RoboHelp with TFS
          Captiv8r Adobe Community Professional & MVP
          Thanks for the information and welcome to our community, Francis.

          While I won't be able to really assist with your questions, I do have a question for you if you don't mind.

          You said: [2] is it possible to work round non-exclusive locking for operations like ToC edits, which update several files at once?

          Why do you think a TOC edit involves several files? Normally when you edit the TOC, you are simply editing a single file. One with a file name that is the same as your project and ending in .HHC. So any edit to the TOC involves making a change to the .HHC file.

          Cheers... Rick
          • 2. Re: RoboHelp with TFS
            Roundand Level 1
            Thank you for the welcome, and the reply.

            I see what you mean about the index, but I'm still concerned that changes to the ToC and similar operations which update central files (eg glossary?), will increase the likelihood of two developers, trying to keep to different topics, managing to overwrite each other's changes.

            In other words, if I add Topic_A and my colleague adds Topic_B, and we both add our topics to the ToC, there is an opportunity for one of us to overwrite the other's ToC edit.

            In experiments, if we both change the same ToC, the second person to do a check-in gets a message saying that they must do a "get" first. This is followed by a dialogue offering to do an auto-merge, then by a failure to auto-merge with no manual merge option, only over-write local or ignore changes.

            In other words, even though we have working source control, and even though project-level operations like ToC edits may change only one file, we are still at risk of losing changes, and I need to minimise that risk.
            • 3. Re: RoboHelp with TFS
              I was also looking into this issue for quite sometime. Is there any update on this?
              • 4. Re: RoboHelp with TFS

                I don't know if you're still looking for an answer to this question, but in Visual Studio's Team Explorer, you can force a project to make all check outs exclusive.  The default setting for files under TF version control is that, in general, binary files (images, etc.) are checked out exclusively and text-based files (html, xml, javascript, etc.) are checked out non-exclusively.  This can be a problem when multiple RoboHelp authors are working on the same RoboHelp project.  Here's how you change your TF project's check-out settings (I believe you need to be a project administrator):


                1. In Visual Studio 2008, open the Team Explorer

                2. Right-click the TF project where your RoboHelp project(s) reside

                3. Select Team Project Settings > Source Control

                4. In the Source Control Settings window, select the Check-out Settings tab

                5. Uncheck the Enable multiple check-out checkbox

                6. While you're here, you can check the Enable get latest on check-out checkbox, if that is your preference.


                Good Luck!