Having been a developer for a number of years, I should know, but I don’t know.
I am working on a released product in a small team. I am the main developer who runs most of the code, but there are a couple of other developers who commit from time to time. We currently have an intermediate server running Hudson CI, which builds after each commit. Production is updated manually using a simple svn up command when the trunk is stable and verified.
This usually works fine, but we have situations that require urgent / urgent changes in production when the code is not completed in the trunk.
How to set up a repo to accommodate this situation? I thought this answer was a good answer, but it is still slightly above my head.
I think when updating production create a branch with this revision. However, if I need to make urgent corrections for production, how can I access this branch and how can I update production by pulling on this branch, and not on the tool? How can I make sure that any urgent corrections for the production branch are also transferred to the trunk?
T. This is a situation in which I want to have a better solution, because it happened several times
- Rev 1000 updated by product
- Ed. 1001-1005 are new features / bug fixes that will be included in the next version.
- Revision 1006 is an urgent solution that needs to be pressed into production
- Version 1007-1009 are additional feature updates.
- Version 1010 should be the next version updated for production
Update:
After reading the branch section of the SVN book, I’m thinking about the following setup.
Create a branch when you are ready to click on prod
svn copy /trunk /branches/production_01 -m 'Production release'
In production, go to the production branch
svn switch /branches/production_01
If an urgent correction is required, the developer should make changes to the branch:
svn checkout /branches/production_01
// make changes
svn merge /trunk # make sure changes get merged into trunk as well
svn commit -m 'Urgent fix
In the production process, we update to the last branch
svn update
Does this process sound as if it will work for our setup?
Matt McCormick
source share