Changes

From SME Server
Jump to navigationJump to search
278 bytes removed ,  08:50, 9 August 2015
Line 61: Line 61:  
'''Branches'''
 
'''Branches'''
   −
There are different types of branches. With the branches directory you can create paths for you code to travel to more specific goals like an upcoming release. The branches directory contains copies of your trunk at various stages of development.
+
There are different types of branches. With the branches directory you can create paths for you code to travel to more specific goals like an upcoming release. The branches directory contains copies of your trunk at various stages of development. The stages can for example be a bug fix branche that address the more serious bugs found in the trunk. The bugs are of such a magnitude that you can’t fix them by yourself in a single commit. So, in order to focus on the problem of fixing this bug you should create a new branch for this purpose. This allows development in the trunk or your release branch to continue, and you won’t disturb them with new bugs or tests that break the current code. Bug fix branches can be named after the ID they are assigned in your bugtracking tool. Another branch is an experimental branch that mainly support introduction of new technologies. You don’t want to bet your entire project on it. Imagine that you want to change from PHP 5 to PHP 6 for your web application. How long would it take you to convert your entire project? Do you want your entire code base (trunk) to be useless until you have converted all of your code? Then use an branch for it!
 
  −
''Release Branches'' - When the trunk reaches the stage that it’s ready to be released (or when you want to freeze the addition of new features) you create a release branch. This release branch is just a copy of your current trunk code.
  −
 
  −
''Bug fix branches'' - Branches may also be used to address the more serious bugs found in the trunk or a release branch. The bugs are of such a magnitute that you can’t fix them by yourself in a single commit. So, in order to focus on the problem of fixing this bug you should create a new branch for this purpose. This allows development in the trunk or your release branch to continue, and you won’t disturb them with new bugs or tests that break the current code. Bug fix branches are named after the ID they are assigned in your bugtracking tool.
  −
 
  −
''Experimental branches'' - Something that also happens a lot is the introduction of new technologies. This is fine, of course, but you don’t want to bet your entire project on it. Imagine that you want to change from PHP 5 to PHP 6 for your web application. How long would it take you to convert your entire project? Do you want your entire code base (trunk) to be useless until you have converted all of your code? Probably not!
      
'''Tags'''
 
'''Tags'''
    
Tags are, like branches, copies of your code. Tags, however, are not to be used for active development. They mark (tag) a certain state your code is in for exampel when you release your code.
 
Tags are, like branches, copies of your code. Tags, however, are not to be used for active development. They mark (tag) a certain state your code is in for exampel when you release your code.
<br>
+
<br><br>
 
The essential Subversion lifecycle is the following:
 
The essential Subversion lifecycle is the following:
  
103

edits

Navigation menu