Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
lirec:version_control_guide [2009-02-04 16:24] davegriffithslirec:version_control_guide [2009-02-04 17:07] davegriffiths
Line 36: Line 36:
  
 The key point is that everyone is trying to make sure the version of the code on the server works as much of the time as possible. It's not a massive problem if the central version is broken, but it should be a priority to fix it, as it will hold people up from working. The key point is that everyone is trying to make sure the version of the code on the server works as much of the time as possible. It's not a massive problem if the central version is broken, but it should be a priority to fix it, as it will hold people up from working.
 +
 +If you discover a problem with the current central version, send an email around to all the people working on it, as they should avoid updating until it's been fixed.
  
 =====SVN Basics===== =====SVN Basics=====
Line 41: Line 43:
 I've set up the lirec svn repository with a dummy project called 'sandbox' that you can play with and break to your heart's content. This guide is written for the commandline version of svn, and heavily biased towards linux. If you prefer buttons to press, read through this document anyway as the concepts are the same, and then have a look at [[http://tortoisesvn.tigris.org/|Tortoise SVN]] or [[http://subclipse.tigris.org/|SubClipse]] if you use Eclipse or [[http://www.visualsvn.com/|VisualSVN]] if you use VisualStudio. [TODO - update this with a guide for using these systems.] I've set up the lirec svn repository with a dummy project called 'sandbox' that you can play with and break to your heart's content. This guide is written for the commandline version of svn, and heavily biased towards linux. If you prefer buttons to press, read through this document anyway as the concepts are the same, and then have a look at [[http://tortoisesvn.tigris.org/|Tortoise SVN]] or [[http://subclipse.tigris.org/|SubClipse]] if you use Eclipse or [[http://www.visualsvn.com/|VisualSVN]] if you use VisualStudio. [TODO - update this with a guide for using these systems.]
  
-Firstly svn likes to know what editor you like to use so it can launch it to add comments for your code commits. Put this environment variable in your .bashrc:+Firstly svn likes to know what editor you like to use so it can launch it to add comments for your code commits. Put this environment variable in your .bashrc (set to your editor of your choice, of course):
  
 <code>export EDITOR=vi</code> <code>export EDITOR=vi</code>
Line 80: Line 82:
 <code>svn update</code> <code>svn update</code>
  
-This will merge everyone's changes (if any have been made) into your working directory. If there is a conflict (two people have changed the same line) it will emit an error message, and insert both lines into the source file in question with lots of <<<<<<<<< so it will be obvious what is going on.+This will merge everyone's changes (if any have been made) into your working directory. If there is a conflict (two people have changed the same line) it will emit an error message, and insert both lines into the source file in question with lots of >>>>>>>>>>>>>> so it will be obvious what is going on.
  
 ====Diffing==== ====Diffing====
  • lirec/version_control_guide.txt
  • Last modified: 2009-02-09 11:01
  • by 81.188.78.24