基于JIRA+SVN的版本管理

合集下载

JIRA+SVN安装及调试

JIRA+SVN安装及调试

J I A R+S V N S Q L S e r v e r2008环境搭建以下是我成功安装jira步骤。

第一步:oracle官网下装安装????jdk-6u24-windows-i586.exe,,?(配置JAVA_HOME=?C:\Program第二步:下载JIRA并安装选择32位版本安装。

安装过程显示如下图:选择CustomInstall第三步:运行JIRA第四步:SQLServer2008中新建数据库JIRA_DB第五步:填写信息数据库信息这里就填写刚刚建立的数据库的信息。

点击NEXT程序开始向数据库中建立初始库信息,需要等几分钟。

填写标题,下一步申请账号:选择相应的选项并填写信息,时间也稍微长了点。

接下来的页面填写账号。

这里修改Username,设置密码。

选择默认,不发送Email。

设置结束。

第六步:右上角设置菜单选择System。

选择Add-ons搜索框填写subversion-jira-plugin点Install。

同样方法再安装免费的JIRACanle ndarPlugin、JIRAChartingPlugin、代码高亮工具JIRASyntaxHighlighterPlugIn?v.1.7.1第七步:配置SVN,点击插件✍SubversionRepositorie✍增加填写内容,*号内容必填:?DisplayName:项目名称*?RepositoryRoot:SVN地址*?RevisionIndexing:是否索引历史记录*?RevisionCacheSize:缓存大小,默认Username:SVN用户名Password:密码编辑完成:第八步:破解,重要步骤。

资源简介1.现在是2013-09-10适合现在最新版本破解2.汉化不是问题,直接去官方的商店下载就行.3.采用修改底层源码的方式实现,直接替换jar包即可.方法:下载破解文件链接:解压缩\atlassian-jira\WEB-INF\classes\atlassian-bundled-plugins.zip中的同名jar包。

Svn版本管理教程

Svn版本管理教程

用subversion(SVN)进行版本管理老是给别人讲svn,花时间太多,近来无事,就写了subversion的版本管理技巧,基本的没多讲,只捡重要的写了一下,以便一劳永逸,希望有用。

好难编辑,终于搞完了...版本管理约定程序员编写程序的过程中,每个程序都会有很多不同的版本,这就需要程序员很好的管理代码,在需要的时间可以取出需要的版本,并且每个版本都有一个完整的说明。

我们使用Sub Version(简称SVN)作为版本管理工具。

这里着重介绍SVN作为跨平台的多人协作使用方法。

在多个程序员管理同一段代码的过程中,版本的管理显得尤为重要,使用SVN可以方便的进行分支、合并,记录下所有的版本。

SVN基本配置在开始某项软件、文档的开发与撰写时,首先由配置管理负责人建立SVN仓库、用户名及其权限,并通知相关人员SVN仓库地址、SVN仓库负责人。

配置强制注释SVN仓库的负责人把工程的tsvn:logminisize设置为1,以便强制注释。

设置方法:在你的工程文件夹右键->属性中,进入 Subversion标签,选中tsvn: logminisize,确保复选框recursive 选中,然后点击Set按钮把它的值设为1,其意思是指提交的注释最短长度为一个字。

如图:SVN软件配置1.忽略文件在SVN 的[Setting]的[General]中,设置需要忽略的文件以便忽略掉一些临时的、无用的文件,常被忽略的文件有*.opt *.ncb *.suo *.plg *.pch *.idb *.pdb *.scc *.obj Debug Release *.o *.bin *.out *.ilk *.aps debug release *.clw *.bak。

每个程序员可以根据自己的需要进行修改忽略文件,上面只是使用VC++与Tornado编程时常用的一些忽略文件。

2.合并比较工具在Merge Tool中可以选择用来合并的工具,强烈推荐用Araxis Merge。

使用SVN来进行版本管理

使用SVN来进行版本管理

使用SVN来进行版本管理SVN(Subversion)是一种开源的版本控制系统,它可以用于管理和跟踪软件项目的版本变化。

在软件开发中,版本管理是非常重要的,它可以帮助团队协作,提高效率,减少代码冲突,并保持代码的稳定性。

本文将介绍如何使用SVN来进行版本管理。

首先,安装SVN服务器和客户端。

SVN服务器可以在本地搭建,也可以使用云服务提供商的SVN服务器,比如GitHub、Bitbucket等。

客户端可以选择TortoiseSVN、Eclipse等工具。

接下来,创建一个SVN仓库。

SVN仓库是存储代码的地方,可以包含一个或多个项目。

在服务器上创建一个空的文件夹作为SVN仓库,并使用SVN命令初始化仓库。

```svnadmin create /path/to/repo```然后,导入项目到SVN仓库。

在本地,将项目导出到一个空文件夹,并使用SVN命令将其导入到SVN仓库。

```svn import /path/to/project file:///path/to/repo/project -m "Initial import"```现在,项目已经导入到SVN仓库中了。

接着,团队成员可以通过SVN客户端从SVN仓库中将项目检出到本地。

在本地选择一个合适的文件夹,使用SVN命令进行检出。

```svn checkout file:///path/to/repo/project/path/to/local/project```这样,项目就被复制到本地了。

此时,团队成员可以开始在本地修改项目,然后将修改提交回SVN仓库。

在修改完代码后,通过SVN客户端可以查看文件的状态,比如检测到的修改、冲突等。

``````同时,如果团队成员在提交代码之前发现了其他人的修改,可以使用“svn update”命令将SVN仓库中最新的代码更新到本地。

```svn update /path/to/local/project```当多个团队成员同时修改同一个文件时,可能会发生代码冲突。

SVN与JIRA集成

SVN与JIRA集成

SVN与JIRA集成并单点认证备忘录2009-07-17作者:linuxpf 来源:最新修改部分错误及增加一些内容/bbs/vi ... &extra=page%3D1进入公司第一件事情就是搭建一个版本控制环境,为提供方便,由于以前从来没有接确,在查找资料的时候走了很多弯路,故记录于此,希望可以给刚接触SVN,jira的朋友带来帮助!其实LINUX工作并不难,重要的是细心和耐心,每个人的情况并不一样,所以安装过中会有许多问题,凡事说起来容易,但做起来难!这些安装过程不正确的地方,请大家指点并改正,更多文章:=================================================================================本文预期效果:创建基于apache的svn服务器,采用JIRA用户数据库,真正实行单点认证,便于实际工作中管理。

同时JIRA中能够很好集成SVN,很简单地通过本的改动,只需在客户端更新文件并在提交过程中在messages指定相应KEY平台:centos4.6定制软件apache2.0.53svn1.4.2mysql5.0.69jira 3.12.3viewvc1.0jdk-1_5_0_08由于本文SVN,APACHE不是重点,估采用YUMyum install httpd httpd-devel gcc gcc-c++ zlib zlib-devel注:由于安装软件众多,考虑速度问题,本人事先已经下载到FTP服务器上:相关文件自己到官方下载:step1:安装JIRA配置java环境下载JDK:wget ftp://192.168.123.99/soft/jdk-1_5_0_08-linux-i586-rpm.bin#sh jdk-1_5_0_08-linux-i586-rpm.bin设置环境变量#vi /etc/profile在文件末尾加入以下内容:QUOTE:JAVA_HOME=/usr/java/jdk1.5.0_08CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOMEexport PATHexport CLASSPATH#logout[root@jirasvn ~]# echo $JAVA_HOME/usr/java/jdk1.5.0_08[root@jirasvn ~]# java -versionjava version "1.5.0_08"Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)Java HotSpot(TM) Client VM (build 1.5.0_08-b03, mixed mode, sharing)[root@jirasvn ~]#step2:下载JIRA并安装MYSQL最新版本JIRA3.12.3,由于JIRA默认是采用HSQL,本文采用MYSQL数据库方式,便于与其它数据库管理!下载mysql:wget ftp://192.168.123.99/soft/MySQL- ... 67-0.rhel4.i386.rpmwget ftp://192.168.123.99/soft/MySQL- ... 67-0.rhel4.i386.rpmwget ftp://192.168.123.99/soft/mysql-connector-java-3.1.14.tar.gzwget ftp://192.168.123.99/soft/MySQL- ... 67-0.rhel4.i386.rpmwget ftp://192.168.123.99/soft/atlass ... 3-standalone.tar.gzQUOTE:[root@jirasvn soft]# rpm -ivh MySQL-shared-community-5.0.67-0.rhel4.i386.rpmwarning: MySQL-shared-community-5.0.67-0.rhel4.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%]1:MySQL-shared-community ########################################### [100%][root@jirasvn soft]# rpm -ivh MySQL-client-community-5.0.67-0.rhel4.i386.rpmwarning: MySQL-client-community-5.0.67-0.rhel4.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 error: Failed dependencies:perl(DBI) is needed by MySQL-client-community-5.0.67-0.rhel4.i386Suggested resolutions:/home/buildcentos/CENTOS/en/4.0/i386/CentOS/RPMS/perl-DBI-1.40-8.i386.rpm[quote]提示缺少perl-DBI于是[quote][root@jirasvn soft]# yum install perl-DBIQUOTE:[root@jirasvn soft]# rpm -ivh MySQL-client-community-5.0.67-0.rhel4.i386.rpmwarning: MySQL-client-community-5.0.67-0.rhel4.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%]1:MySQL-client-community ########################################### [100%][root@jirasvn soft]# rpm -ivh MySQL-server-community-5.0.67-0.rhel4.i386.rpmwarning: MySQL-server-community-5.0.67-0.rhel4.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%]1:MySQL-server-community ########################################### [100%]step3:安装jiraQUOTE:#tar -zxvf atlassian-jira-enterprise-3.12.3-standalone.tar.gz#mv atlassian-jira-enterprise-3.12.3-standalone /home/jira[root@jirasvn soft]# cd /home/jira[root@jirasvn jira]# lsatlassian-jira common external-source logs README.html server temp webappsbin conf licenses NOTICE README.txt shared tomcat-docs work1.修改JIRA配置文件Configure your application server to connect to MySQL由于采用mysql,估计稍作一些修改,修改备份该文件cp server.xml server.xml.bak这样修改后可以对比一下,就能够发现那里有问题!修改#vi /home/jira/conf/server.xmlQUOTE:<Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false"><Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"username="jirauser"password="jira"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8" />[quote][quote]<Server port="8005" shutdown="SHUTDOWN"><Service name="Catalina"><Connector port="8080"maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"c disableUploadTimeout="true" /><Engine name="Catalina" defaultHost="localhost"><Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"><Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false"><Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"username="[enter db username]"password="[enter db password]"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"[ delete the minEvictableIdleTimeMillis and timeBetweenEvictionRunsMillis params here ]/><Resource name="UserTransaction" auth="Container" type="erTransaction"factory="erTransactionFactory" jotm.timeout="60"/><Manager className="org.apache.catalina.session.PersistentManager" save/></Context></Host></Engine></Service></Server>修改后对比文件!QUOTE:[root@jirasvn conf]# diff server.xml.bak server.xml14,20c14,18< username="sa"< password=""< driverClassName="org.hsqldb.jdbcDriver"< url="jdbc:hsqldb:${catalina.home}/database/jiradb"< minEvictableIdleTimeMillis="4000"< timeBetweenEvicti< maxActive="20" />---> username="jirauser"> password="jira"> driverClassName="com.mysql.jdbc.Driver"> url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"> />[root@jirasvn conf]#修改要细心,以免自己误操作,而导致没有必要的错误!url="jdbc:mysql://localhost/jiradb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8中要注意修改自己的相应路径这里采用数据库jiradb2.Configure the JIRA Entity EngineEdit atlassian-jira/WEB-INF/classes/entityengine.xml (if you are using JIRA Standalone) or edit-webapp/WEB-INF/classes/entityengine.xml (JIRA WAR/EAR), and change the field-type-name attribute to mysql. (If you forget to do this and start JIRA, it may create database tables incorrectly. See this page if this happens to you.) Also delete the schema-name="PUBLIC" attribute, if it exists:编辑atlassian-jira/WEB-INF/classes/entityengine.xml文件定位100行,修改为myql,且删除 schema-name="PUBLIC"QUOTE:[root@jirasvn jira]# cd atlassian-jira/WEB-INF/classes/[root@jirasvn classes]# ls |grep entityentitydefsentityengine.xml[root@jirasvn classes]# vi entityengine.xmlQUOTE:<!-- DATASOURCE - You will need to update this tag for your installation.--><datasource name="defaultDS" field-type-name="mysql"[ delete this, if it exists: schema-name="PUBLIC" ]helper-class="org.ofbiz.core.entity.GenericHelperDAO"check-on-start="true"use-foreign-keys="false"...[quote]3.创建数据库[quote][root@jirasvn jira]# mysqladmin -u root password yourpassword[root@jirasvn jira]# mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3Server version: 5.0.67-community MySQL Community Edition (GPL)Type 'help;' or '\h' for help. Type '\c' to clear the buffer.mysql>注意修改数据库格式为utf-8,创建用户jira,密码为jira,授予查看数据库权限mysql> create database jiradb character set utf8;mysql>create user jirauser identified by 'jira';mysql> grant all privileges on *.* to 'jirauser'@'%' identified by 'jira' with grant option;mysql> grant all privileges on *.* to 'jirauser'@'localhost' identified by 'jira' with grant option; mysql> flush privileges;验证下:mysql> quitBye[root@jirasvn jira]# mysql -u jirauser -pmysql> show databases;+--------------------+| Database |+--------------------+| information_schema || jiradb || mysql || test |+--------------------+4.拷贝MYSQL驱动程序:下载地址:/products/connector/j/注意的是下载3.11以下老版本,可能会出现问题QUOTE:1. Download the MySQL Connector/J JDBC driver, eg. version 3.1.12 (tar.gz or zip) which we have verified to work. NOTE:the older 3.1.11 driver is broken.NoteA user has reported encountering problems using the Resin JDBC driver for MySQL. However, the Connector/J driver fromMySQL works correctly (except for version 3.1.11).2. Add the MySQL JDBC driver jar (mysql-connector-java-3.x.x-bin.jar) to the common/lib/ directory. NOTE: Do not place the Debug Driver (mysql-connector-java-3.x.x-bin-g.jar) on the CLASSPATH as this can cause issues (JRA-8674).[quote]5.创建用户,以后用此用户启动JIRA#useradd jira# passwd jiraChanging password for user jira.New UNIX password:BAD PASSWORD: it is too shortRetype new UNIX password:passwd: all authentication tokens updated successfully.[root@jirasvn home]# chown -R jira.jira jira[root@jirasvn home]# ls -altotal 48drwxr-xr-x 5 root root 4096 Sep 9 15:48 .drwxr-xr-x 23 root root 4096 Sep 9 15:19 ..drwxr-xr-x 15 jira jira 4096 Sep 9 16:08 jiradrwx------ 2 root root 16384 Sep 9 2008 lost+founddrwxr-xr-x 3 root root 4096 Sep 9 16:06 soft[root@jirasvn home]#6.编写自启动脚本[quote][root@jirasvn bin]# cd /etc/rc.d/init.d/[root@jirasvn init.d]# vi jira#!/bin/bash# Jira startup scriptRUN_AS_USER=jiraCATALINA_HOME=/home/jira/start() {echo "Starting Jira: "if [ "x$USER" != "jira" ]; thensu - $RUN_AS_USER -c "$CATALINA_HOME/bin/startup.sh" else$CATALINA_HOME/bin/startup.shfiecho "done."}stop() {echo "Shutting down Jira: "if [ "x$USER" != "x$RUN_AS_USER" ]; thensu - $RUN_AS_USER -c "$CATALINA_HOME/bin/shutdown.sh" else$CATALINA_HOME/bin/shutdown.shfiecho "done."}case "$1" instart)start;;stop)stop;;restart)stopsleep 10#echo "Hard killing any remaining threads.."#kill -9 `cat $CATALINA_HOME/work/catalina.pid`start;;*)echo "Usage: $0 {start|stop|restart}"esacexit 0保存后退出#chmod +x jira# ln -s /etc/rc.d/init.d/jira /etc/rc.d/rc3.d/S89jira# ln -s /etc/rc.d/init.d/jira /etc/rc.d/rc3.d/K89jira这样以后就能够在文体模式自启动了!记得#chown -R jira.jira jira/7.现在可以启动JIRA[root@jirasvn jira]# /etc/rc.d/init.d/jira startStarting Jira:If you encounter issues starting up JIRA Standalone Edition, please see the Troubleshooting guide at/ ... oubleshooting+GuideUsing CATALINA_BASE: /home/jiraUsing CATALINA_HOME: /home/jiraUsing CATALINA_TMPDIR: /home/jira/tempUsing JRE_HOME: /usr/java/jdk1.5.0_08done.[root@jirasvn jira]#8.在浏览器中输入192.168.123.70:8080无法显示,防火墙阻止:#iptables -I INPUT -p tcp --dport 8080 -j ACCEPT如果仍然无法打开,请查看日志文件#tail /home/jira/logs/catalina.out正常就会出现:下图申请一个试用注册码,关于破解本人不是重点,企业强烈要求购买,反正也不贵jira license key:mrPntaCPMgvChDaqIAmBAckHmQTXXopncpCKpvFMDOkwavmi2KjrsUnQ>JPXPaA<FFCwgj2KgJRyoJo4M7pddI2V6Xhn pqMxTOQRmmonqQmnPPtWRmNMpqPPQrnrQVvSSsxVxVtxomnUUnonvupnvqnoppUUnonvupnvqnoppUUifkrucXkp9.关于设置向导参考官方手册:/software/jira/docs/v3.13/setup.html如果有问题请到论坛来讨论!如图:。

svn 管理规范

svn 管理规范

svn 管理规范版本控制是软件开发中非常重要的一项工作,而SVN(Subversion)作为一种广泛应用的版本控制系统,其管理规范对于团队协作和项目管理至关重要。

本文将介绍一些svn管理规范的要点和最佳实践。

一、版本库管理在开始使用SVN之前,首先需要创建一个版本库来存储项目的代码和相关文件。

版本库应该按照项目进行划分,不同的项目应该有独立的版本库。

二、代码组织结构在版本库中,代码的组织结构应该合理和清晰,以方便团队成员的协同工作。

通常,可以按照以下方式来组织代码:1. trunk:主要开发分支,用于存储主要的开发代码。

2. branches:用于存储各种分支,例如特性开发、bug修复等。

3. tags:用于存储项目的里程碑版本,每个里程碑版本应该被标记。

三、代码提交规范1. 提交频率:建议经常进行提交,特别是完成了一个小的功能或者修复了一个bug后应尽快提交。

2. 提交注释:每次提交都应填写有意义的注释,描述本次提交的目的和内容。

注释应简洁明了,不需要过长但需要包含足够的信息以便其他开发人员理解。

3. 检查代码:在提交之前,应先进行本地代码的检查和测试,以确保代码的质量和稳定性。

四、分支管理在开发过程中,可能需要创建各种分支来同时进行多个任务、修复bug等。

以下是一些建议:1. 创建分支:创建分支时,应该从某个里程碑版本或者主要开发分支(trunk)进行分支操作。

2. 分支命名:分支的命名应该明确且具有代表性,可以包含功能名称、作者等信息。

例如,feature/xxx、bugfix/xxx。

3. 分支合并:分支开发完成后,应该及时合并到主要开发分支(trunk)或者其他适当的分支。

五、并发开发管理在团队协作开发中,可能会涉及到多人同时修改同一份代码的情况。

以下是一些建议:1. 避免冲突:在修改代码之前,应先更新代码库,以确保本地代码和服务器上的代码同步。

这样可以避免冲突和代码丢失。

2. 解决冲突:如果出现冲突,应及时与其他开发人员进行沟通,合作解决冲突。

SVN与JIRA集成配置

SVN与JIRA集成配置

jira与svn结合配置说明1.SVN安装注:svn的版本与JIRA的版本只有部分版本兼容,详细可上网查阅1.安装安装服务器和客户端(TortoiseSVN)2..创建资源库命令: svnadmin create c:/svndata/ebbd3.运行svn服务命令: svnserve -d -r c:/svndata4.相关配置1..授权进入E:/SVNHOME/test目录下的conf目录,打开svnserve.conf,去掉anon-access = read前面的#号注释,最好anon-access = read前面空格也去掉,然后把anon-access = read改为anon-access = none,意思是说没有用户名与密码的不能读写,同样地把auth-access = write和password-db = passwd 去注释(和前面的空格)2.设置密码打开你创建的版本库的目录下的conf/passwd文件,在文件尾加如下:user_name = your_password3.导入右击你待导入的目录TortoiseSVN->Import(导入)...,然后URL里输入svn://localhost/repos即可。

4.检出项目右击一个新的目录(待存放的项目的目录)SVN Check Out(检出)...,然后URL里输入svn://localhost/repos即可。

完成后,这个新的目录左下角有一个绿色的钩2.安装JIRA1. 解压JIRA 到本地目录2.创建数据库(我使用的MYSQL数据库,)create database jiradb character set utf8;3.设置环境变量和修改配置文件设置环境变量同时按下window+pause,在弹出的对话框中选择Advance-->Environment Variablesjdk版本需要配置JDK1。

6把对应的驱动加到classpath: 增加;E:\studyTool\mysql_connecter\mysql-connector-java-5.1.7-bin.jar点击New设置name: CATALINA_HOMEvalue: E:\jira-enterprise-4.1然后修改PATH:增加%CA TALINA_HOME%\bin;修改E:\jira-enterprise-4.1\atlassian-jira\WEB-INF\classes下的jira-application.properties :设置jira.home = E:\\jira4.1_home (此路径必须存在且不与安装目录相同)修改E:\jira-enterprise-4.1\conf下的server.xml(给出的是完整代码可以直接复制,修改一下用户名密码即可):<?xml version="1.0" encoding="utf-8"?><Server port="8005" shutdown="SHUTDOWN"><Service name="Catalina"><Connector port="8080"maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"connectionTimeout="20000" disableUploadTimeout="true" /><Engine name="Catalina" defaultHost="localhost"><Host name="localhost" appBase="webapps" unpackW ARs="true" autoDeploy="true"><Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="true"><Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"username="root"password="123456"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost/jiradb?autoReconnect=true&amp;useUnicode=true&amp;charact erEncoding=UTF8"/><Resource name="UserTransaction" auth="Container" type="erTransaction"factory="erTransactionFactory" jotm.timeout="60"/><Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/></Context></Host></Engine></Service></Server>修改E:\jira-enterprise-4.1\atlassian-jira\WEB-INF\classes下的entityengine.xml :<datasource name="defaultDS" field-type-name="mysql"若不为HSQLDB则同时删除schema-name="PUBLIC"这句.../>安装启动bin下startup.bat,打开http://localhost:8080 进入安装。

SVN管理规范

SVN管理规范

SVN管理规范一、引言版本控制是软件开辟过程中非常重要的一环,它可以匡助团队有效地协作、追踪代码变更、恢复历史版本等。

SVN(Subversion)是一款流行的开源版本控制系统,被广泛用于软件开辟项目中。

本文旨在制定一套SVN管理规范,以确保团队成员能够高效、规范地使用SVN进行版本控制。

二、SVN仓库结构1. 仓库的组织结构应根据项目的特点进行设计,普通情况下可按照模块、子项目或者功能进行划分。

2. 每一个项目应在仓库中创建一个独立的目录,并按照项目名称进行命名。

3. 在项目目录下,可以根据需要创建子目录,如分支(branches)、标签(tags)和主干(trunk)。

- 分支目录用于保存项目的不同分支,如功能开辟分支、修复分支等。

- 标签目录用于保存项目的发布版本,每一个标签应包含一个稳定的、可发布的版本。

- 主干目录用于保存项目的主要开辟代码,所有的开辟工作应在主干上进行。

三、SVN操作规范1. 提交待码- 在提交待码前,应先更新本地工作副本,确保与仓库中的最新版本保持一致。

- 每次提交应只包含一个逻辑上的更改,确保提交的代码具有单一性。

- 提交时,应提供故意义的提交消息,描述本次提交的目的和内容。

- 避免提交不必要的文件,如编译生成的文件、暂时文件等。

2. 分支管理- 在需要进行功能开辟或者修复时,应创建相应的分支,避免直接在主干上进行修改。

- 分支的命名应具有描述性,能够清晰表达分支的用途和目的。

- 分支的合并应在完成相应的开辟或者修复后及早进行,以减少冲突的可能性。

3. 标签管理- 在发布稳定版本时,应创建相应的标签,以便于后续的版本追踪和回溯。

- 标签的命名应遵循一定的规则,如使用版本号或者日期进行命名。

- 标签创建后,应禁止对其进行修改,以确保标签的稳定性。

4. 冲突解决- 在更新本地工作副本或者合并分支时,可能会发生代码冲突。

冲突解决应及时进行,避免影响其他团队成员。

- 冲突解决时,应子细检查冲突的原因,并根据实际情况进行相应的修改和调整。

SVN版本管理规范

SVN版本管理规范

SVN版本管理规范通联支付网络服务股份有限公司技术支持中心研发部版本管理规范受理市场支持部2011年1月版本控制信息目录文档类别使用对象.... 错误!未定义书签。

1.引言............. 错误!未定义书签。

目的.......................................................... 错误!未定义书签。

范围.......................................................... 错误!未定义书签。

术语定义...................................................... 错误!未定义书签。

2.版本管理......... 错误!未定义书签。

2.1版本标识方法.............................................. 错误!未定义书签。

2.1.1版本标识说明........................................ 错误!未定义书签。

2.2目录结构 ................................................. 错误!未定义书签。

2.3版本的存放................................................ 错误!未定义书签。

trunk ..................................................... 错误!未定义书签。

branches .................................................. 错误!未定义书签。

tags ...................................................... 错误!未定义书签。

files ..................................................... 错误!未定义书签。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2)JIRA多版本
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
c)版本控制报告(自动生成):Roadmap(路线图)
PM/PSM通过需求、改进点、缺陷的 分拣,实现交付节奏的控制
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
转变:软件供应商独家交付咨询服务商+软件开发商协同研发 2.企业管理越来越专业化、精细化
要求:用户对软件的功能细节、可用性,用户体验的要求越来越高
3.监管法规、行业政策等促使企业管理的持续改善 要求:1.软件供应商的研发管理能力、版本管理能力等 2.用户对软件质量要求越来越高
财政部 证监会 审计署 银监会 保监会 关于印发《企业内部控制基本规范》的通知 (本规范自2009年7月1日起实施)
中的问题号+问题概要描述
2
2010 Confidential
在JIRA环境中即可查看到与此 问题相关的原文件的改动,起
到关联可追溯的目的。
3
三、JIRA+SVN软件版本管理 1)JIRA+SVN
JIRA Subversion Commits
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
三、JIRA+SVN软件版本管理 1)JIRA+SVN
缺陷跟踪:缺陷跟踪采用JIRA为平台进行管理,与配置管理 SVN相结合,将问题Key+问题描述与SVN的代码提交相结合,让 问题的追溯和版本更新更清晰。
2010 Confidential
添加修改代码文件 1
1)JIRA+SVN
将修改后的文件提交到SVN, 在Message对话框中填写JIRA
三、JIRA+SVN软件版本管理
3)案例
4-1 打包/make WAR
PSM QC
软件交 2C0o付1n0fid节en奏tial
4-2 测试/关闭问题
QC
JIRA配置库
以下机制相互衔接建立联系
1、软件研发规划版本(版本号,范围定义) 2、JIRA版本(版本号,问题需求清单) 3、SVN标签 4、应用程序包命名 5、程序“关于”中版本提示(如V1.4.1 build 38209)
问题跟踪解决-常规流程
PM/PSM 问题分拣 问题监控 统计分析
2.分拣问题
Developers
3.受理问题
4.解决问题
1)JIRA+SVN
PMO
创建项目, 版本,模块, 项目组成员 权限分配等
Issue
Issue
Issue
1.报告问题
6.重新打开问题 QC
5.确认解决
Issue
2010 Confidential
PM/PSM
每个版本包含三个要素: 1.需求和缺陷的集合 2.决策优先级 3.结合团队交付效率的合理 完成时间
软件交 2C0o付1n0fid节en奏tial
系统 设计
软件 实现
验证 测试
版本 发布
三、JIRA+SVN软件版本管理
3)案例
分拣问题-修改修复版本
1-2 需求/问题分拣
PM/PSM
注意: 1.指定修订版本 2.分配责任人,关注人等
验证 测试
版本 发布
3-4 解决问题
Developer
关键: 按照交付节奏进行问题的受 理与修订
三、JIRA+SVN软件版本管理
3)案例
4-0 修改系统“关于”
代码提交 PSM
软件交 2C0o付1n0fid节en奏tial
系统 设计
软件 实现
验证 测试
版本 发布
注意: 1.填写 版本号 1.4.1 2.填写 SVN修订号 38209 3.填写 版本日期 2010.05.26
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
a)软件版本规划:制定版本的交付节奏-时间
版本的三种状态: 发布/released、 未发布/unreleased、 归档/archived
2010 Confidential
影响版本:bug在哪些版本中被发现 修复版本:bug计划在哪个版本中修复
2010 Confidential
三、JIRA+SVN软件版本管理
重点: 1.软件需求和交付节奏 2.需求变更与缺陷跟踪
可能是n次迭代
软件交 付节奏
系统 设计
软件 实现
验证 测试
版本 发布
运行 维护
3)案例
VSS
2010 Confidential
三、JIRA+SVN软件版本管理
3)案例
1-1 版本定义
系统 设计
软件 实现
验证 测试
版本 发布
三、JIRA+SVN软件版本管理
3)案例
5-1 发布版本
PSM
5-2 版本发布通告
PSM QC
软件交 2C0o付1n0fid节en奏tial
系统 设布
四、JIRA的其他功能
Dead line:创建任务/缺陷时指定完成期限(dead line) 工期管理:创建任务,评估工期、反馈工期/工作记录(一个 任务可以多次反馈) 任务管理 风险管理 …
软件交 2C0o付1n0fid节en奏tial
系统 设计
软件 实现
验证 测试
版本 发布
三、JIRA+SVN软件版本管理
3)案例
2 系统设计
Designer
VSS
注意: …
软件交 2C0o付1n0fid节en奏tial
系统 设计
软件 实现
验证 测试
版本 发布
三、JIRA+SVN软件版本管理
eb/QYG40921 Trunk
c)版本控制报告(自动生成):趋势分析
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
心得: 1.版本要早规划早定义,而不是开发后再确定版本号 2.使用工具辅助开发管理,让“异地开发管理” 变得简单; 3.作为介质,为开发管理的持续改进提供了数据支撑
已发布 已发布 已发布
2010 Confidential
一、软件研发价值新趋势
Size makes differences
Code size (lines) Complexity Repeated updates Developer(s) Reliability requirement
Small program
Tens to hundreds Low No
供应商
需求管理 分析设计
开发 测试
软件需求管理 软件版本无规划
单元测试缺失 版本持续集成 集成测试
实施运维
持续版本升级
2010 Confidential
需求传递失真 非功能性需求被忽略
需求变更
版问 版 本题 本 交管 发 付理 布 节与 失 奏修 控 失正 控随

用户验收测试
分阶段上线 个性化需求
客户
SVN样例
SSC
3-0 SVN规划
PSM
Web App
Report Files
Tags
DB Script
3)案例
… SSC_v1.3.5_online_formal SSC_v1.3.6_online_formal
注意: 1.SVN源代码配置库要全 面:*.java,*.jsp,*.xml,*.sql,… 2.配置目录结构PSM要做好规划; 3.每位研发团队成员按规范操作。
能够赢得客户赞誉和附加值的是质量、可用性、性 能、相应及时性、团队工作氛围、信任度等软指标
2010 Confidential
目录
一、软件研发价值新趋势 二、软件研发、交付环节暴露的问题 三、JIRA+SVN软件版本管理 四、JIRA的其他功能
2010 Confidential
二、软件研发、交付环节遇到的问题
2010 Confidential
c)版本控制报告(自动生成):Release report(发布报告)
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
c)版本控制报告(自动生成):Change log(修改日志)
2010 Confidential
三、JIRA+SVN软件版本管理 2)JIRA多版本
目录
一、软件研发价值新趋势 二、软件研发、交付环节暴露的问题 三、JIRA+SVN软件版本管理
– 1)代码提交与问题单相结合(JIRA+SVN) – 2)JIRA多版本管理 – 3)JIRA+SVN版本管理案例
四、JIRA的其他功能
2010 Confidential
三、JIRA+SVN软件版本管理
Usually one person Low
2010 Confidential
Working system
104~107 High Yes
Usually many people High
一、软件研发价值新趋势
软件研发的发展趋势有以下几个特点:
1.客户越来越成熟,分工越来越细致 要求:对业务咨询能力、需求前瞻能力要求提高
业务驱动力 技术驱动力
– 协作 – 新业务 – 资金 – 财务共享中心
融合催生
– 用户体验 – 平台无关 – 集成 – 技术路线
– 营销 – 物流 – 分析 – 数据中心
相关文档
最新文档