7 Replies Latest reply on May 20, 2008 7:05 AM by Author care

    What gets stored in RoboHelp .cpd file?

    ladwriter
      We are using VSTS to store our RoboHelp project. My coworker and I each check out the entire project (unlocked), do our work, and then check everything back in. We are having problems checking in the .cpd file. Can someone explain what type of changes are being stored in this file?

      When we check this file back in to VSTS we don't have the option of merging in the other user's changes, so we don't know what type of information we may be losing. Does anyone have experience with using RoboHelp and VSTS together? If not, just some overall information about what is in the .cpd file would be very helpful.
        • 1. Re: What gets stored in RoboHelp .cpd file?
          MergeThis Level 4
          The CPD, HHP, LDB, and PSS files are supposedly machine-specific files, and should not be added into any source control product.


          Good luck,
          Leon
          • 2. Re: What gets stored in RoboHelp .cpd file?
            Linux Rules Level 2
            Hello ladwriter -

            The CPD file is a Microsoft Access 97 database file that tracks darn near EVERYTHING in your project. This is why it is so important to "do things" (like add/delete files, folders, etc.) in RoboHelp. Here is a list of the tables in my RH7 project CPD file (you can figure out what they track from the names):

            AKeywordList
            AKeywordSourcecs
            AnaheimProjectFiles
            BaggageFileList
            BaggageFileReferences
            BuildTagList
            Colors
            CompileOptions
            Database Version
            FolderList
            Fontsets
            Framesets
            GlossaryList
            GraphicHyperlinks
            Hyperlinks
            IgnoredWords
            Image List
            ImageSources
            IndexList
            InformationTypes
            KKeywordList
            KKeywordSources
            LayoutList
            MapFileList
            MergedCompiledFileList
            MiscFileList
            MiscProperties
            Missing Topic List
            MultimediaList
            PopupTopicFileList
            Project Properties
            RSRHFGlobalPageBreakRules
            RSRHFMBreakrules
            RSRHFMDocgenList
            RSRHFMDocList
            RSRHFStylesConvProps
            RSRHFStylesMapping
            SkinList
            SnippetList
            SnippetReferences
            Style Sheets
            StyleSheetReferences
            TemplateList
            TemplateReferences
            TOCList
            Topic List
            URL List
            Variables
            Version
            Windows


            Regards,
            GEWB
            • 3. Re: What gets stored in RoboHelp .cpd file?
              HKabaker Level 2
              ladwriter,

              Welcome to the forum. (Don't you guys have any manners?)

              Are you saying that you are applying source control to the RH project folders, and that you and another user can check out the same files before the other checks them back in?

              If so, then I don't understand the purpose of source control, which I haven't used for RH.

              Since the cpd file tracks activity and statuses in the project folder during each editing session and finally upon the project closing, separate versions certainly will become out of sync.

              Does MS Access have a utility that compares two versions of the "same" file and lets you sync them reliably?

              Harvey
              • 4. Re: What gets stored in RoboHelp .cpd file?
                Linux Rules Level 2
                Hello ladwriter and Harvey -

                (Sorry about that, my bad.)

                WELCOME ladwriter to our little corner of the world!

                Has your question been answered to your satisfaction?

                Regards,
                GEWB
                • 5. Re: What gets stored in RoboHelp .cpd file?
                  ladwriter Level 1
                  Hi Harvey, and thank you for the welcome!

                  We have added our RoboHelp project to Microsoft Visual Studio Team Server for a couple of reasons. The first is to make sure we don't lose our work if one of our computers crashes. The other reason is that we are storing our project in the directory with the code for the software, so that we (our architects) can integrate it into the software build process. That part is beyond me.

                  So, to answer your question, we can both check the files out without locking them, and then we can each work on our own sections without any problems. The .cpd file does not give us the same merge choices as other "conflicts" do. For example, if my coworker creates a new topic and then checks her code in before I check mine in, when I try to check mine in it says there's a conflict - that such and such a file exists on the server. Then it gives me the option of merging it in with my version of the project since I didn't have it before. With the .cpd file, I don't get the option to merge her changes in with mine. My two options are to discard the server changes (hers) or undo my local changes. Either way it seems like we're losing something.

                  I think what Leon said about that file not being added to source control seems correct. However, if all the rest of the project is in source control, and that one is not, and my coworker and I have 2 different versions on our machines, what happens when we go to compile our help? Wouldn't that file need to be in the same location as the rest of the project files?

                  Unless we can figure this out, we have decided to take a copy of the project and put it out on another computer that gets backed up regularly. We can work on it there without source control, and then replace the source control project with the newer version on a regularly scheduled basis. Hopefully that will work.

                  I appreciate all the feedback!
                  • 6. Re: What gets stored in RoboHelp .cpd file?
                    HKabaker Level 2
                    Give some thought tot this:
                    quote:
                    -------------------------------------------------------------------------------------
                    ... We are storing our project in the directory with the code for the software, so that we (our architects) can integrate it into the software build process.
                    ------------------------------------------------------------------------------------

                    The project files are not used for building the application's help system. WebHelp output is what they use, and it makes sense to apply version control there.

                    There lots of ways to back up project files so you don't lose your work.

                    A very effective way of synching your efforts is for one of you always to work on the "master" set and to import the other author's updated topics from a separate copy of the project. RH will automatically import any related graphics or images as the first author controls which revised topics will overwrite the earlier versions.

                    The second author would then trash the secondary copy so the master cpd file and other project housekeeping files remain the masters. Next time the second author can make a new copy of the master project.

                    If you had 5 or 6 authors working on the same project at the same time, things could get complicated.

                    Good luck,


                    Harvey
                    • 7. Re: What gets stored in RoboHelp .cpd file?
                      Author care Level 2
                      Hi Ladwriter and Harvey,
                      Regarding storage of RH files etc, what we do here is to think of a help system in two parts, "Master" and "Build". The "Master" being the RH project file and the "Build" being the compiled output.

                      We store a copy of the "Master" and a copy of the "Build" on a secure network drive (which is backed up ) for each release of software. We also supply a separate copy of the build to the developers to add to their area.

                      The current work is done on local hard drives with appropriate backup. We don't use any kind of source control software.