What is your favorite web app deployment workflow with SVN?

后端 未结 11 1467
陌清茗
陌清茗 2021-01-31 00:29

We are currently using a somewhat complicated deployment setup that involves a remote SVN server, 3 SVN branches for DEV, STAGE, and PROD, promoting code between them through pa

11条回答
  •  眼角桃花
    2021-01-31 00:54

    I work with a similar situation to that which you currently have. I was tasked with finding a ‘better’ solution and it ran something along the lines of the following.

    The live branch represents the servers in their current state.

    Any development work should be done in a branch that is taken from live. This could be a one person half hour job or a year long multi team project. As often as is liked changes to live can be merged into these development branches.

    Before a piece of work goes live, changes from live are merged again and it is tagged as a potential release. This release is tested on the staging environment and if it passes testing the new live is taken from the tag.

    It is possible to merge several pieces of work into one release if that works better.

    This means that it is fairly simple to keep development branches up to date with live and if a piece of work in development is dropped there is minimal tidying up to do.

    To change from working on one project to another a developer can simply svn switch their local working environment to a different branch.

    One of the problems we have had with the system as you describe is that DEV can get out of date with PROD fairly quickly, so you are not developing against the live and it is not easy to spot cross dependencies until stage. The above solution solves these issues while still remaining fairly lightweight.

提交回复
热议问题