PLUS+1 User Forum

PLUS+1 Tools => PLUS+1 GUIDE => Topic started by: HyJenx on June 27, 2016, 04:46:43 PM

Title: Software Version Control Ignore List
Post by: HyJenx on June 27, 2016, 04:46:43 PM
Is there a recommended (or has anyone used) an ignore list when putting Plus+1 projects under revision control?

Most revisioning software allows the user to setup a list of directories and file types that should not be put under version control. This list typically will omit things like comipler logs and temp files. Does anyone have a starter list they'd be willing to share?
Title: Re: Software Version Control Ignore List
Post by: oiltronic on July 05, 2016, 09:53:34 PM
I'd start with these:
*.~*
~*
__searchdb*.sdb
Title: Re: Software Version Control Ignore List
Post by: tjakew on October 28, 2016, 04:18:00 AM
The way that I set it up was through trial and error. I don't have a list but I can give you a quick and dirty procedure to figure it out. The task is to figure out which files change when you close a project without making changes as well files that change when you open a project.

I don't compress my projects to .P1P format. I also have not been versioning the .lhx download because during development because it gets rewritten a lot and I wanted to require everyone to recompile code before they load it. This may be flawed logic as I have been thinking about a development pipeline and release management for this code so I will probably start versioning them once the first release is solid.

First open the project and do a Save-As into a new empty folder. Do not do anything else and close the project.

Now open the project and look at the project folder in Windows Explorer and sort the files by date modified (newest first). You are going to notice that the first files on the list were modified when you opened the project. Skip over these and find the first file that wasn't modified when the project opened. This is easier the longer you wait between closing and opening because the longer time gap is more obvious. Version this file and every one that has an earlier time stamp. Repeat a few times to make sure you found them all. You can add the rest of the files that aren't versioned to an ignore list too.

After adding the files to the repository and committing the change close and open the program a few times without changing anything. At this point you shouldn't get any conflicts when you close and open the project but if you do, find the file that changed and un version it. Make sure all of the really important files are versioned like the .scs, the structured text, array initialization files, images, and screen definitions (not a complete list) that contain the work that you can copy into a blank project and piece the project back together if you had to.

Now you can compile the project and use the same time stamp sorting method to add the files generated by the compiler to the ignore list. Add your .lhx file if you want and you should be done.