Indigo Rose Software

Professional Software Development Tools

 
Results 1 to 10 of 10
  1. #1
    Join Date
    Apr 2010
    Posts
    529

    SVN for internal development

    Hey all,

    I'm still trying to develop those good habits (I meant relating to coding ) but how do others keep track of changes, fixes, etc in their code?

    A while back Sakuya commented about Tortoise SVN - I downloaded it but haven't looked at it yet. It seems to me that there is already so much effort going into the writing and correcting the code that to add another "job" of keeping and tracking these changes and subversion lists up to date is a big one.

    While I can understand Changelogs or SVN once an app is "Released", I'd be interested to know what do you guys use internally while developing?

    Cheers,
    Dean

  2. #2
    Join Date
    Oct 2009
    Location
    Merton, United Kingdom
    Posts
    684

    Lightbulb SVN is great, but Git is greater!

    Since I posted that, I've moved over to using Git.

    It allows me to commit changes to the project offline before pushing them to the Git repository.

    For example, here are some changes made by my team on a project a while ago, it was made in AMS.

    https://github.com/IllusionProgrammi...c7a1356220c997
    https://github.com/IllusionProgrammi...514076444bfcf6
    https://github.com/IllusionProgrammi...c846023fe8ab47

    This also allows anyone to pull my code and add their own changes which I can then pull into the main repository.

    I highly recommend it, I'm using it at the moment for an IRC bot written in pure Lua.

  3. #3
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    3,287
    I second the Git recommendation, it's amazing.
    Bas Groothedde
    Imagine Programming :: Blog :: Familiar people here

    My AMS Plugins:

  4. #4
    Join Date
    Apr 2010
    Posts
    529
    Sakuya, Bas,

    Thanks for the input, I'll have get Git and have a look.

    But, I guess I wasn't clear on my question. I am looking at what you use (and maybe you use Git for this...) for your internal development - just the stuff you're messing with as a single person project, or maybe, for example, Bas when you're working on fixes/updates on a plugin.

    I was wondering if anyone else uses any offline tools for this?

    Cheers,
    Dean

  5. #5
    Join Date
    May 2003
    Location
    Pendleton, Oregon
    Posts
    1,038
    Dean,
    If you are the only developer on a project, then you can probably get by without this type of software, but if you are working with other developers, it is just about mandatory to use a program like this.

    Say that you and I decide to work together on a project. We start the morning both with the exact same project and code. Today you work on changing the code for some of the buttons on page 1. I work on page two and write a couple of function that I put in the globals.

    By the end of the day, we have two different code bases. Your version of the project doesn’t include the changes I made, and my project doesn’t contain the changes you made. At this point we have forked the code and have two separate projects. Which of us has the latest version? Neither.

    Today you made all the buttons on page one work, so before you quit for the day, you update the main project with your version of the code. Now you are ready to start on page 3 tomorrow. I’m pretty happy with the functions I wrote today, so I too update the main project by overwriting it with my version of the code. Since I’m running a little behind you, my version of the project overwrites your updates.

    Tomorrow morning you may be dismayed to find that the code no longer contains all your hard work from today. My update overwrote your update.

    These types of programs are designed to help us merge our files into one copy of the program. They help keep us from both making changes to the same chunks of code at the same time, and if after our work today is merged into one new version, if our combined project crashes and burns horribly, these programs help us track of all the changes made today, and even roll the code base back to a time when it didn’t crash.

    These types of programs do have a few more benefits, but these are the main ones I think. If you work alone on a project, and make regular backups, I suspect these types of programs are of limited value to you. If you are working with other developers on the same project, these programs can help save endless headaches.
    Add-ons for AMS. Toolbar Buttons Galore, System Animations, the Window Construction Kit, and more.
    Visit Acme-Tek

  6. #6
    Join Date
    Apr 2010
    Posts
    529
    JimS,

    Thanks for taking the time to explain it. If possession is 9/10 of the law, knowledge is 9/10 of understanding

    I am the only developer working on projects (at present), but I find it hard to track changes I've made, remembering why I made these changes, and then when something breaks (after cussing & kicking the table leg) I go back to see what I changed that broke it.

    Perhaps it is developing better habits of "note-taking", it is just that I am always impressed when I see a Changelog so clearly explained & in detail (after which I look at the scribbles on my napkin and think "There's got to be a better way...")

    Thanks again to everyone that so gratuitously and graciously gives of their time to help each other.

    Cheers,
    Dean

  7. #7
    Join Date
    May 2006
    Posts
    5,380
    I use a notepad (No, not NotePad.exe) , a actual physical pad of paper and a pen, when something springs to mind, i note it (under the relevant section of course), this way, when working on a project or just surfin the web, i have an idea or think of something to do with a project i note it and forget it and carry on with what im doing, revisit the idea at a later stage

    if i don't note it, i have to try it, always taking me away from my current focus, a good old pen and paper, timeless, lol
    Open your eyes to Narcissism, Don't let her destroy your life!!

  8. #8
    Join Date
    Apr 2010
    Posts
    529
    Hey Dean,

    That's funny, using pen & paper. I went out a week ago and bought a specific notepad just for that. Nothing else get written in it - just for code related stuff.

    Funny how we all work to build simple apps in life, but the pen & paper usually seem to work best (and it doesn't hang, need updating, rebooting, etc).

    Cheers,
    Dean

  9. #9
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    3,287
    MadDogDean,

    I actually also have a folder with a notepad, calculator, pen etc. for some quick stuff
    I need to remember and calculate. As an example, ProgressEx is a huge project and has
    a lot of variable/structure/constant/global/macro/procedure names I simply can't remember.
    So I write stuff down, it's quite useful and paper isn't that expensive

    Besides, I think I wouldn't even like software for something like this, I have an organized
    folder structure for all my projects and (IMHO) clear code inside, all I need is remembering
    some names and ideas for me to work smoothly.
    Bas Groothedde
    Imagine Programming :: Blog :: Familiar people here

    My AMS Plugins:

  10. #10
    Join Date
    Mar 2007
    Location
    México
    Posts
    183
    For the best memory....the worst ink....

Posting Permissions

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