Hi, we use SVN for keeping track of our uvision projects.
We have an issue with the uvproj and uvopt files.
We keep them revision controlled as new developers need these files to work on a project, but these files get changed every time a new user opens them. They seem to have user specific settings. However this means that whenever we need to commit some code we need to make sure that we don't commit the uvproj and uvopt files which is an inconvenience.
I've worked with microsoft visual studio projects and they have required project files which do not change unless we modify project options (so we can keep these revision controlled), and then user specific files which aren't mandatory and don't need to be revision controlled(if these files don't exist they get created the first time the project is opened).
So I'm wondering which uvision files should be revision controlled?
Thanks in advance, Alex
I normally throw away these two files and check them out again. Then make a build - if this binary is usable then no checkin of the files.
If I need to add more files or change options, I do the same. Throw them away. Check out current value from source repository. Make specific change and then commit the project files.
I make sure I don't select any source window to minimize what gets touched in the project files.
And yes - I hate Keil a lot whenever I do a diff in the project directories and see all the random changes introduced. Just because Keil don't separate project and desktop information properly.
Ok so I'm not the only one with this issue. I would do the same (discard the files and use the ones from the repository). However we have some projects where just opening them and closing them straight away modifies the files, so it just means extra wasted time on reverting the files back to the version on the repository.
So I suppose this is a suggestion for Keil to better separate the project file and the user option file so that the project file doesn't change every time someone new opens up the project. A lot more settings should be stored in a file similar to uvgui.user
Do represantatives from Keil read these forums or should they be contacted some other way?
Some time ago I switched to makefile-based build system. I check in make.exe next to Makefile, so building the project is a matter of running "make" in the project directory. I only use the IDE for debugging. Setting up the IDE for debugging only takes a few mouse clicks, so I don't even bother to save the project files. For editor I use Source Insight - it is vastly superior to almost any IDE I know.