Blog 3 - SVN and Source Control

| 10 Comments | No TrackBacks

                Up until this point in my Computer Science career, I had always wondered what types of tools were available to make group work go more smoothly.  This year has introduced me to the concept of version control, which has made my life as a programmer working in a group setting considerably more flexible.  

                The notion of being able to store multiple revisions of your code in a different place was a huge encouragement for using version control.  In 3081 this semester, we are using Subversion as our version control system and it has already saved me from a considerable headache.  There was one point when I was modifying my source code for Iteration 1 of our project and I ended up messing up some of the functions to the point that I didn't want to sit there and debug the code all day long.  I ended up using a revert command to go back to an older version of my source code, which allowed me to erase all of the stupid mistakes I had made, which saved me considerable time in the long run.

                Another convenience of using Subversion in this class is that it has made working on the project with my partner considerably easy.  I am a commuter and my partner lives on campus, so it is not always the easiest task to establish a day and time that we can meet up in person to work on a project.  Using version control has granted us the ability to talk about the various implementations we agree upon and let us modify them on our own local computers at home.  When we finish making changes, we submit the code so that we can see the changes each other made and give each other feedback.  It is a worthwhile tool to possess for anyone that might have issues establishing meetings with their partner.

                Even if you have the chance to meet with your partner, Subversion is still an awesome tool to be using in order to be able to work on the same project from multiple machines.  The ability to have copies of the repository "checked out" on your personal computer and on the computers at school ensures that any changes you make will be visible, regardless of where you are working as long as you are adding and submitting the appropriate files to the repository.  Getting the most recent version of your code is a breeze as well, since all you have to do is "update" the repository and it will pull the most recent changes that were made into your local working version.

Despite all of the simplification that Subversion, and moreover version control systems have done in my life, I am definitely not an expert on the subject matter.  There are certain things that I still am interested in learning myself, such as how to set up a version control system for a project on my own.  Knowing how to go through this process would prove beneficial in allowing me to establish a proper working environment for me and any other group members that I am going to be working with going forward. 

               

               

No TrackBacks

TrackBack URL: http://blog.lib.umn.edu/cgi-bin/mt-tb.cgi/164969

10 Comments

Subversion is definitely a convenience when it comes to working on our project for this class. This is because I had the exact same problem as you - the ability to revert back to previous revisions saved our project from potential catastrophe. I too am very interested in learning more about the version control as I do not know much. I'm sure we'll be pretty good it by the end of this class.

-Hieu Tran

I totally agree with that the function of keeping multiple reversion of your project is one revolutionary benefit to programmers. We often deal with the messing up situations which are similar to that you have addressed, it is a disaster for a large project. With svn, we can just back to the point where we commit it. It is like a save and load in games.

-Han Lu

When I started my computer science career, I always have been wondering the same question that is there some tools that will efficiently facilitate coding in groups. Because I really had a bad time on managing my directories for all codes. Right now I totally messed up my code bank and it is really hard for me to find a specific piece of code at a certain point in the past. Thank god this year I get to know there is such a thing called vertion control and SVN that could solve these problems. I could absolutely understand what you said. Hope you had a great time coding with the hep of SVN.

Yannan Wang

The benefits of version control for me have extended outside the classroom. I now have a repository for my resume. I tag separate resumes for separate companies I send them to. and when I make a change I can just revert back to an old version if I need to.

--Andrew Bork

i do think that the svn helps all of the students working as a group. I believe you must feel very happy and fortune that you are using a version control when you messed your program up. I gradually know why many people are using version control.

Yanjie Zhang

You bring up a good point about subversion, its usefulness for a group who can't be in the same place at the same time. My partner and I both commute and our schedules don't allow us to meet for extended periods of time. Subversion has helped us work effectively as a group as well.

-Alexander Koenen.

I strongly agree with you that svn is really convenient for some group that cannot easy hang out and meeting. By using this kind of version control and source control can help us talk with our partner without face to face. Since now so many international company, we may have different time in different part on earth, so using these cool tool can aim us work with others!

-Cheng, Chung-Yuan-

Having svn as an undo button is a great tool. Sometimes you get to a point where you debugging the code is a bad idea and getting back to your previous working code is almost impossible.

Being able to edit the code from different locations or machines can improve the efficiency of coding. Even though conflicts would happen, but with some agreement they can be avoided.

Adel Al-Dawood

i agree that svn is a useful tool that can save one a lot of trouble, but to be honest, i haven't gotten much use out of it yet. i'm a commuter too, but i get everything done with my partner in lab
-jakub nemec

I like your point that subversion allows you to work from multiple machines. I completely forgot about this capability when I was writing my blog, but it's turned out to be one of the most useful functionalities - since my partner and I have yet to meet in the same location. I also feel like I have a lot left to learn about Subversion.

Jonathan Bassen

Leave a comment

About this Entry

This page contains a single entry by anwar010 published on November 1, 2011 1:29 PM.

Blog 2 - Pros and Cons of Groups was the previous entry in this blog.

Blog 4 - Testing is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Categories

Pages

Powered by Movable Type 4.31-en