Rockbox Development > Starting Development and Compiling

New compilation errors

<< < (3/3)

AlexP:
svn up updates the source code you have previously checked out using svn, attempting to merge any local changes you have made (e.g. patches).  It saves having to download the entire source every time and reapply patches (unless there was a big enough change in svn that they won't apply, in which case it tells you).

speedebikes:
Job,

I'm brand new here to rockbox and the open source development community, but as a long time developer having used Microsoft's mediocre Source Safe tool and later the very good Perforce revision system I can tell you that SVN is a revision control system and you definitely want to take the time to learn about it and use it.

When dealing with a big collaborative software effort a revision control system keeps track of all of the changes going into the project, it keeps track of what revision you currently have on your client and let's you do minimal updates where only the files that have changed will need to be copied down.  Normally you'll want to sync to the latest revision, but sometiimes when things go wrong it enables you to sync to older revisions which is a powerful way to determine when/what something got screwed up.

If you ever want to contribute code to a project you have to learn and use the revision system.  It enables the developers to keep track of who is changing what.  When multiple people are making changes to the same file simultaneously the check in procedure aids in getting the changes from each merged together.  For files that are difficult or impossible to merge (often binaries) files can be locked by one individual while making changes so that no one else will simultaneously attempt to make changes.

So even if you are only pulling code and not trying to write and push code back it is worthwhile to learn and use SVN.  It will likely prevent your version getting in the funky state you have it now.  And if you do have troubles it will make them easier to resolve.

There's lots more that revision control systems can do but one other important one is the management of branches.  Sometimes developers work on a feature that is only of interest to a subset of the community or may take some time to become fully proven and ready for inclusion in the main releases.  So a branch is created to contain this set of changes.  If there is code of interest to you in a branch you will likely only have access to it through using SVN.

Finally, there's a Wikipedia page on SVN http://en.wikipedia.org/wiki/Subversion_%28software%29 which is a good place to get a general introduction to it.

Todd Allen

bascule:

--- Quote from: Job Van Dam on November 20, 2007, 08:18:53 AM ---
I found the (N) at the end of the last line weird, is it normal?

--- Code: ---Platform set to gigabeatf

Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, (M)anual (N)
n
--- End code ---

--- End quote ---

That indicates the default option if you don't pick anything...

Job Van Dam:
Speedbikes.... holy crap you are intelligent. You have to have a job in IT. If you don't, why not?
I'm looking for a job in IT, entry level of course, so I'm going strongly consider what you said and use this SVN. Thanks for the advice.

speedebikes:
Job, I'm a retired video game programmer.  Not intelligence, just experience.  I'm used to being totally baffled and finding instructions that tell exactly what to do, but now why to do it.  And without knowing the why its often tough to adapt exact instructions to ones circumstances.  I guessed you were just starting out and a bit more of an explanation would be useful.

Anyway, you have one big advantage over me.  When I started out there was no Google or Wikipedia or any of the other fantastic internet resources that you can use to get more info fast on so many technical topics.  When you get instructions, but don't get the 'why' behind them be sure to do some searching.

Good luck job hunting.

Navigation

[0] Message Index

[*] Previous page

Go to full version