Version Control


Closed Thread
Results 1 to 34 of 34

Thread: Version Control

Hybrid View

  1. #1


    Did you find this post helpful? Yes | No

    Default

    Hi Melanie,

    That's a good idea including the hardware version number in the software file name.
    I include it in e-squared on the device as well.
    If I need to upgrade firmware, my software checks to see if the hardware is up to date enough to allow the latest firmware upgrade.

    Regards.
    ---> picnaut

  2. #2
    Join Date
    Mar 2003
    Posts
    41


    Did you find this post helpful? Yes | No

    Default Version Control - AUTOMATED

    Perhaps I was not explicit enough. I already make the very first line of all my programs a DATA statement which writes the program name and version off to EEROM. Later in my program, I always have a read block that shows the version details as a serial data stream.

    What I am searching for is something that automatically increments the file name EVERY time a compile is done. Occasionally I find I make a 'minor' change, forget to update the file name or version, then find unexpected things got clobbered.

    Personal discipline should mean I never make that mistake but it still happens.

    I guess this is really a plea to David Barker for an enhancement to MCSP.

  3. #3
    mytekcontrols's Avatar
    mytekcontrols Guest


    Did you find this post helpful? Yes | No

    Thumbs up I agree...

    I also use MicroStudio, and would love it if it had an option to auto save numbered back-up files upon a save or re-compile. Not having this, like you said, can really mess you up if you forgot to do a manual back-up yourself (something that can bite even the most diligent person). I'll have to take a look on the net to see if there is a 3rd party back-up system that would be suitable.

  4. #4


    Did you find this post helpful? Yes | No

    Talking

    Hello,

    If you can program a PC, there are a lot of resources on the net.
    I've gathered together a number of tools that would make a 3rd party version of this very feasible. I don't have time to work on it now, but maybe in the next week or so. Basically, you could leave MCSP totally out of the loop here. The program I would write would launch when windows started and run in the background, hardly using any resources. It would look for "PBP.exe" to be run. As soon as PBP.exe closed, the program would make a copy of the .BAS (or .PBP) file and add an incremented number. A dirt simple version of this, that is tailored to one project (with an .ini file), could probably be whipped up quickly. A more complex version that monitored what files were passed to PBP.exe and was not souce file specific would involve a little more work.

    Unfortunately I'm really busy from now until the New Year with work and wedding preparations. However, I am going on a business trip in mid-November. I may have some time on the plane to whip this up. Maybe even before then. I don't know.

    Anybody...feel free to beat me to it.

    Cheers.
    ---> picnaut

  5. #5
    mytekcontrols's Avatar
    mytekcontrols Guest


    Did you find this post helpful? Yes | No

    Smile No use re-inventing the wheel...

    Hello Picnaut,

    It is very generous of you to offer to do this, but I can't help but feel that there is already a solution out there. I did some initial checking today and discovered a multitude of programs that offer selective file back-up, and some apparently with either version number and/or date archiving. Most also offered the ability to only back-up on change, which would be most desirable. Of course some of these packages are quite expensive, whereas others are very cheap if not free. I'll be checking this out in more details in the days to come, and post my results here.

  6. #6
    mytekcontrols's Avatar
    mytekcontrols Guest


    Did you find this post helpful? Yes | No

    Arrow Here is a freebie called CS-RSC

    I found this one today and have installed it as the single-user freeware version.
    http://www.componentsoftware.com/Pro...S/freeware.htm

    It is a bit sophisticated, but offers a very robust method of software Version Control, that works on the check-in and check-out basis. Everytime you check-in a file or an entire project folder, a new revision level is assigned in the archival storage folder. Checking-out updates the working file or folder to the latest checked-in version. You can also add comments for each check-in, which can be seen by right clicking a given file, and selecting history, which will then give you a list of every revision. There is also a feature that will show you the actual line changes within the file in a very visual and intuitive way. This program has a lot to offer, but it might be way more then some are looking for.

    So far I like what I see.

  7. #7
    mytekcontrols's Avatar
    mytekcontrols Guest


    Did you find this post helpful? Yes | No

    Thumbs up CS-RCS Version Control Software Update

    Well I've been actively using this software for a few days now, and I must say I am very impressed, and pleased with how it works.

    Brian you stated:
    What I am searching for is something that automatically increments the file name EVERY time a compile is done. Occasionally I find I make a 'minor' change, forget to update the file name or version, then find unexpected things got clobbered.
    It doesn't quite work as you have outlined above, but I think the CS-RCS approach might still satisfy the essence of what you are looking for... namely, a way to recover from unexpected problems due to minor changes. The difference is that you have to manage the process.

    Here's an overview on using CS-RSC:

    The best way to use it, especially for people like me that use multiple include files, is to define a project folder and move all your working files into it. This is done by using the CS-RCS Properties part of the program (I wont get into this too much here, because it is well covered in the help file).

    Once a project has been set-up and all the working folders are checked-in, the Document Explorer will now become your management tool for these files.
    <div style="float:left; padding-left: 225px;"><b>Document Explorer</b></div>
    <img src="http://www.picbasic.co.uk/forum/attachment.php?attachmentid=587&stc=1&d=1130783295 " style="clear: left;float: left; padding: 8px;">
    From this window (available on desktop) you can see any files that have changed within the project being highlighted in blue, and unchanged as black (changed files are files that have been modified and saved).

    To the far right is the version number assigned to the file the last time it was checked-in. Right click any file To obtain the Status, to Check-it-In, to Check-it-Out, to see the History of changes made, ect.

    The RCS Status option is rather cool. It allows you to open a "Differences" window that lets you see the actually changes that have occured to file. In the example below, can be seen the line-by-line modifications, with deletions shown as crossed out red colored text. And stuff that was added, is shown in blue text.


    <div style="float:right; padding-right: 200px;"><b>Differences Window</b></div>
    <img src="http://www.picbasic.co.uk/forum/attachment.php?attachmentid=588&stc=1&d=1130783295 " style="clear: right;float:right; padding: 8px;">To review all the changes, you can use the arrow keys to step yourself through everything that is different from when the file was last checked-in.

    To make this system really work well for you. It is important that you check-in files when you feel that you are at a stable or working version. Remember to do this before you go on to make additional changes, or to try out some new hack. This way if the changes really mess something up as Brian pointed out, you can always use the check-out feature to restore the file back to the last checked-in version. To help you analyze the multitude of checked-in versions that will inevitably accumulate, a note may be added to describe it, which can be seen by mousing over the file name (also available in the Revision Manager Window).

    !!! IMPORTANT !!!
    Only use check-out when you are certain that you no longer want the present un-checked in state of the file (the present working copy). Checking-out will over write it. If you are unsure about this, it is best to check-in the file, since you can always pull up a copy of any checked-in file you want.


    <div style="float:left; padding-left: 225px;"><b>Revision Manager</b></div>
    <img src="http://www.picbasic.co.uk/forum/attachment.php?attachmentid=586&stc=1&d=1130780524 " style="clear: left;float: left; padding: 8px;">
    The Revision History option available from the right-click menu, opens up the Revision Manager. This is where you can review all the versions that were checked-in, see the notes on the changes that were made, and retrieve a copy of any previous version (an actual copy is made into the Project folder --- it does not over write the current version).

    Milestones:
    Sometimes it is desirable to mark a certain revision level as having some significance, or having achieved a milestone (i.e.; "released beta version", "production release", ect.). Using the Milestones feature from the Document Explorer menu, allows you to do this very thing. Milestones can also be retrieved, similar to the way the Revision Manager retrieves previously checked-in versions. I wont get into all the details about this feature, but it definately can help add another layer of organization to your project.

    Well hopefully this gives you a good quick glance of the CS-RCS system, and also what it can do for you. Remember this tool is not just limited to use with your PBP source files, it could also give you version control of any other documention that you may have a need to track changes on.

    And last, but not least, NO I am not affiliated with or get paid by Component Software the makers of the CS-RCS program I have described. I just like what I see, and I think it can be a great companion to PBP and/or MicroCode Studio.

    (thank you Brian for starting this post, and opening my eyes
    Attached Images Attached Images    
    Last edited by mytekcontrols; - 31st October 2005 at 18:34.

Similar Threads

  1. How do I give a radio control car autonomous control
    By Kenjones1935 in forum General
    Replies: 190
    Last Post: - 17th January 2010, 15:40
  2. No one-way approach to learning ir remote control frequencies
    By selbstdual in forum mel PIC BASIC Pro
    Replies: 41
    Last Post: - 22nd June 2007, 13:26
  3. How to set TMRO & TMR3 as Counter?.
    By NatureTech in forum mel PIC BASIC Pro
    Replies: 21
    Last Post: - 18th May 2007, 08:52
  4. Allow better control of text in GUI
    By Archangel in forum PBP Wish List
    Replies: 1
    Last Post: - 19th February 2007, 13:25
  5. Control RC servo via Parallax Servo Control
    By cibotsan in forum mel PIC BASIC Pro
    Replies: 3
    Last Post: - 17th September 2005, 08:18

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts