以下是本人用SVN管理代码的一些实践,但并不一定是“最佳实践”,条条道路通罗马,适合你自己的,才是最好的,仅供参考
1.SVN Layout:
---/branch/
---/trunk/
---/tags
------/release
------/20100101
------/20100201
------/20100301
------/20100401
------/release 1.0
.
.
.
------/release 2.0
.
.
.
2.下面分阶段,介绍每个分支的作用
(a)开发初始阶段
开发初始阶段,在branch上新建分支,如/branch/yourPrj;此阶段,考虑到会比较频繁的提交、修改产物,所以提交没有那么严格,以快速反应为主
(a)第一次release
当第一次release临近时,将/branch/yourPrj cp到trunk,开发人员逐步开始向trunk提交产物,同时确保提交质量
QA前,将/trunk cp到/tags/release,再build,对于bug fix,先merge到release,再build。
(b)例行release
以增量开发为例,假定每月release,将trunk上的待发布的revision merge到release,build之。
QA通过之后再打tag(X.X或者$date),如果是比较重大的release,可以自行特别标识(如release X.0)
(c)多个team并行开发
如果多team并行开发,而且feature的粒度比较大(比如超过release周期),可以在branch上建分支,如/branch/module1,待开发完后,合并到trunk,release前,将trunk上的待发布的revision merge到release。
3.注意事项
(a)按要求提交产物,保持trunk的stable
(b)所有的build,都是以release为基础产生的,所以,在开发人员在不熟悉代码merge之前,不能随意touch release分支,建议在初期每个team指定人员merge
(c)merge代码会是瓶颈,除了要耐心、细致外,还要有利器--批量merge的脚本
分享到:
相关推荐
**正文** ...以上是对配置管理工具-SVN的详细介绍,包括其核心概念、安装过程、使用教程以及一些最佳实践。通过熟练掌握这些知识,你可以有效地利用SVN进行团队协作开发,提高软件项目的质量和效率。
- 配置:创建或连接到版本库,通过`svn co URL`检出代码,`svn commit`提交更改。 - GUI工具:为了更直观的操作,可以使用TortoiseSVN等图形化客户端,它们基于SVN命令行工具。 4. 分支管理 - SVN 1.5引入了改进...
在软件开发过程中,SVN作为版本控制系统,极大地提高了团队协作效率,减少了代码冲突,使得项目的版本管理变得有序和可追溯。"svn-win32-1.6.6"虽然已是较老的版本,但其核心功能依然适用于现代开发环境,尤其对于...
良好的版本控制实践能提高团队效率和代码质量。 9. **备份和恢复**:定期备份SVN仓库是至关重要的,以防数据丢失。同时,了解如何从备份恢复也是必要的技能。 10. **故障排查**:遇到问题时,参考SVN的错误代码和...
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪项目源代码的变更。它允许开发者在多人协作的环境中工作,记录每一次修改,方便回溯、合并和分支管理。下面将详细阐述SVN的核心概念、功能及如何在...
Eclipse SVN插件是开发人员在Eclipse集成开发环境中与Subversion版本控制系统交互的重要工具。Subversion(SVN)是一种广泛使用的开源版本控制系统,...了解并掌握其使用方法,有助于开发者更好地管理和维护项目代码。
SVN(Subversion)是一种广泛使用的版本控制系统,它允许用户管理文件和目录的变更历史,便于团队协作开发。"site-1.8"是SVN的一个特定版本,这里指的是SVN插件包的1.8版本。这个插件包主要用于集成到开发环境中,如...
**SVN配置管理工具——TortoiseSVN详解** TortoiseSVN是一款深受开发者喜爱的版本控制系统,它基于Subversion(SVN)系统,专为Windows用户设计,提供了友好的图形用户界面。在开发环境中,SVN是进行源代码管理、...
SVN(Subversion)是Apache软件基金会开发的一款版本控制系统,用于管理源代码、文档等文件的版本变更。在Windows平台上,SVN提供了针对Windows 32位系统的版本,即"svn-win32"。"svn-win32-1.8.4.zip"是一个包含了...
本文将深入探讨SVN配置文件的相关知识点。 **1. SVN配置文件位置** 在大多数操作系统中,SVN的配置文件通常位于用户的个人目录下。在Unix/Linux系统中,它位于`~/.subversion`目录;在Windows系统中,它位于`%APP...
SVN(Subversion)是一种版本控制系统,用于管理软件项目的源代码和其他文件,让多人协作开发变得有序。本手册旨在指导用户如何使用SVN客户端TortoiseSVN进行基本操作及一些进阶功能。 1. **安装与配置** - 首先,...
在白冰的分享中,可能涵盖了如何配置JIRA和SVN的集成,如何设置工作流,以及如何利用这两个工具进行高效的版本管理和代码控制。此外,还可能讨论了最佳实践,如如何利用JIRA的看板来可视化开发过程,如何设置SVN的...
**SVN代码管理器** Subversion(简称SVN)是一种版本控制系统,用于跟踪文件和目录的变更,便于团队协作和项目管理。TortoiseSVN是基于SVN的一个图形化客户端,尤其以其与Windows资源管理器的无缝集成而受到开发者...
- **配置JDK和Maven**: 在“系统管理”->“全局工具配置”中,分别配置JDK目录和Maven的根目录,以及Maven的设置文件路径。 **4. Jenkins 项目配置** - **创建项目**: 输入项目名称,选择“构建一个Maven项目”。 ...
在实践中,人们对于配置管理存在许多误解,这些误解往往会导致配置管理工作的失败: 1. **配置管理仅仅是版本控制**:实际上,版本控制只是配置管理的一部分,配置管理还包括变更控制、状态报告和配置审计等重要...
AnkhSVN是一款集成在Visual Studio环境中的Subversion(SVN)客户端工具,它为开发者提供了便捷的版本控制功能,使得在Visual Studio 2022中进行代码管理变得更加直观和高效。该软件的最新版本Ankh-VSIX-2022专门...
本文将深入探讨如何在MyEclipse集成开发环境中配置SVN,以便实现项目代码的版本管理和团队协作。我们以"svn-site-1.8"为例,详细解析相关知识点。 首先,`svn-site-1.8`指的是Subversion 1.8版本的服务器端或客户端...
SVN,全称为Subversion,是一款广泛应用于软件版本控制系统中的开源工具。它的主要功能是管理项目的源代码,记录每...通过熟练掌握SVN的使用,开发者可以在项目开发过程中更好地管理代码,降低出错风险,提升工作效率。
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的历史版本。在给定的压缩包文件“site-1.8.0”中,包含的是 SVN 插件的版本 1.8.0,适用于多种集成开发环境(IDE),如 Flex、...