tuleap是一个自由和开放源码的套件,与团队成员协作共同进行软件项目管理。是一个网络解决方案,技术总监,项目经理,开发人员,质量管理人员 和其他用户可以轻松地构建和部署工程。tuleap提供了管理项目、任务、变化, 缺陷、文档以及版本控制、持续集成和社会协作工具。 官方介绍:https://tuleap.net/doc/en/index.html
具体部署安装步骤:
1、安装CentOS or RedHat 6.x 系统
2、关闭SELinux功能
vim /etc/selinux/config 修改
SELINUX=disabled
setenforce 0 #即时关闭SELinux
3、安装yum功能
#rpm -qa|grep yum
#rpm -qa|grep yum|xargs rpm -e --nodeps
3.2、下载安装yum
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-utils-1.1.30-37.el6.noarch.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-73.el6.centos.noarch.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-updateonboot-1.1.30-37.el6.noarch.rpm
rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm yum-utils-1.1.30-37.el6.noarch.rpm yum-3.2.29-73.el6.centos.noarch.rpm yum-updateonboot-1.1.30-37.el6.noarch.rpm yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm --force --nodeps
3.3、配置CentOS-Base.repo
vim /etc/yum.repos.d/CentOS-Base.repo
复制粘贴下面代码
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-6 - Base - 163.com
baseurl=http://mirrors.163.com/centos/6/os/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#updates
[updates]
name=CentOS-6 - Updates - 163.com
baseurl=http://mirrors.163.com/centos/6/updates/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-6 - Extras - 163.com
baseurl=http://mirrors.163.com/centos/6/extras/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/6/centosplus/x86_64/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
#contrib - packages by Centos Users
[contrib]
name=CentOS-6 - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/6/contrib/x86_64/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
# yum clean all
# yum makecache
3.5.测试更新bash
# yum update bash -y
4、安装Epel
yum install -y epel-release
#删除命令 yum remove -y epel-release
5、配置仓库[Tuleap]
name=Tuleap
baseurl=http://ci.tuleap.net/yum/tuleap/rhel/6/dev/$basearch
enabled=1
gpgcheck=0
6、安装 Tuleap
#删除命令 yum remove -y tuleap-all tuleap-plugin-git-gitolite3
7、安装相关程序myhostname = localDomain.com
alias_maps = hash:/etc/aliases,hash:/etc/aliases.codendi
alias_database = hash:/etc/aliases,hash:/etc/aliases.codendi
recipient_delimiter = +
9、访问服务器
# yum install yum-utils
# yum-complete-transaction --cleanup-only
2、Mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost'问题的解决
[root@localhost ~]#/etc/init.d/mysql stop (service mysqld stop )
[root@localhost ~]#/usr/bin/mysqld_safe --skip-grant-tables
另外开个SSH连接
[root@localhost ~]# mysql
mysql>use mysql
mysql>update user set password=password("123456") where user="root";
mysql>flush privileges;
mysql>exit
[root@localhost ~]#pkill -KILL -t pts/0 #可将pts为0的**用户(之前运行mysqld_safe的用户窗口)强制踢出
正常启动 MySQL:
/etc/init.d/mysql start (service mysqld start)
项目操作规范:
MileStone:对应一个开发版本,一个milestone必须包括一个版本的完整过程;
Release Number:版本号,参见版本规范;
Start Date:此MileStone的开始日期;
Duration:此MileStone包括的工作日(依据项目周期确定);
Total Capacity:此MileStone所包含的总工作量(通过自动累计每个Sprint的Capacity获得)
Status:当前MileStone的状态;
Total Remaining effort:此MileStone剩余的工作量(通过自动累计每个Sprint的Total Remaining eEffort获得)
Sprint:定义的一个项目阶段(一个MileStone可以包含多个Sprint)
Start Date:此Sprint的开始日期;
Duration:此MileStone包括的工作日(依据项目类型,将Sprint确定为5、10、15、20);
Capacity:此Sprint可以包含的工作量(经验值,目前都以工作日为单位,默认对应Duration);
Status:当前的Sprint状态;
Total Remaining eEffort:此Sprint剩余的工作量(通过自动累计每个task的Remaining effort获得)
User Story:定义一个用户故事(拆分用户故事的原则就是每个用户故事只包含对一个用户角色的需求描述)
As a:用户角色
I want to:用户目标,也是User Story的主题;
In order to:功能及流程描述;
Acceptance Criteria:User Story中的核心要点描述;
Attachment:附件(可以逐步完善,包括流程图、整理后的详细需求或设计、界面示意等)
Initial effort:原始的工作量(自动计算)
Remaining effort:剩余的工作量(自动累计每个task的Remaining effort获得)
Artifact links:与之相关的事件的ID号,方便参考(可以是UserStory、task等)
Task:指派的工作任务
Task Title:任务名称
Type:任务类型(设计、开发、测试、需求等)
Details:任务描述
Assigned to:被指派人
Status:任务状态
Remaining eEffort:任务工作量
Artifact links:与之相关的事件的ID号,方便参考
Bug:Bug
Summary:相当于名称;
Original Submission:Bug描述;
Attachment:提交附件(截图、日志文件等)
Status:Bug修复状态
Assigned to:被指派人
Severity:Bug级别
Artifact links:与之相关的事件的ID号,方便参考(可以是UserStory、task等)