RHEL5 cvs配置和使用简单文档(完结)

2024-02-01 00:32

本文主要是介绍RHEL5 cvs配置和使用简单文档(完结),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[root@imdba ~]# rpm -qa |grep cvs
cvs-1.11.22-5.el5
如果没有就装一下,默认自带。
[root@imdba ~]# ls -ltr cvs*
-rw-r–r– 1 root root 751059 Oct 14 07:23 cvs-1.11.22-5.el5.i386.rpm
[root@imdba ~]#useradd cvs
[root@imdba ~]#passwd cvs
[root@imdba ~]#mkdir /home/cvs/cvsroot
[root@imdba ~]#chown -R cvs.cvs /home/cvs/cvsroot
[root@imdba ~]#cvs -d /home/cvs/cvsroot/ init
[root@imdba ~]# cat /etc/xinetd.d/cvs
# default: off
# description: The CVS service can record the history of your source /
#              files. CVS stores all the versions of a file in a single /
#              file in a clever way that only stores the differences /
#              between versions.
service cvspserver
{
disable                 = no
port                    = 2401
socket_type             = stream
protocol                = tcp
wait                    = no
user                    = root
passenv                 = PATH
server                  = /usr/bin/cvs
env                     = HOME=/home/cvs/cvsroot
server_args             = -f –allow-root=/home/cvs/cvsroot pserver
#       bind                    = 127.0.0.1
}
[root@imdba xinetd.d]# /etc/init.d/xinetd restart
Stopping xinetd:                                               [  OK  ]
Starting xinetd:                                               [  OK  ]
[root@imdba xinetd.d]# ps -ef |grep cvs
root      3915  2864  0 07:29 pts/1    00:00:00 grep cvs
一看没有cvs进程,傻眼了,不要紧,看端口。
[root@imdba xinetd.d]# netstat -antp |grep 2401
tcp        0      0 0.0.0.0:2401                0.0.0.0:*                   LISTEN      3912/xinetd
[root@imdba CVSROOT]#
chmod -R 770 /home/cvs/cvsroot/CVSROOT/config
[root@imdba CVSROOT]#
chmod -R 644 /home/cvs/cvsroot/CVSROOT/config

 

增加用户:
在/home/cvs/cvsroot/CVSROOT/passwd 添加以下字符串

cvs:EIbvpIUkVHbhs :cvs
Nova:EIbvpIUkVHbhs :Nova

,中间的高亮的随机字符串请用以下pl脚本生成。

[root@imdba ~]# more passperl.pl
#!/usr/bin/perl
srand (time());
my $randletter = “(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))”;
my $salt = sprintf (”%c%c”, eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt ($plaintext, $salt);
print “${crypttext}
“;
用法为:perl passperl.pl “cvs” 生成密码:EIbvpIUkVHbhs

登陆CVS:

[root@imdba ~]#
IP=`ifconfig eth0 |grep inet |grep Mask |awk ‘{print $2}’|awk -F: ‘{print $2}’`
[root@imdba ~]# exportCVSROOT=:pserver:cvs@$IP:2401/home/cvs/cvsroot
[root@imdba ~]# cvs login
Logging in to :pserver:cvs@192.168.238.128:2401/home/cvs/cvsroot
CVS password: 输入cvs

检查是否已CVS账户登录:echo $CVSROOT
:pserver:cvs @192.168.238.128:2401/home/cvs/cvsroot
项目初始化,创建一个CVS库

[root@imdba Nova]# pwd
/root/Nova
[root@imdba ~]#
cvs import -m “Nova Store” StoreHouse cvs First

N StoreHouse/Nova.grants.sql
N StoreHouse/MySQL-server-community-5.0.83-0.rhel3.i386.rpm
N StoreHouse/cvs-1.11.22-5.el5.i386.rpm
N StoreHouse/MySQL-client-community-5.0.83-0.rhel4.i386.rpm
N StoreHouse/auto-export-user-grants.sql
N StoreHouse/db74293_nova_wp_n20090904_329.sql
N StoreHouse/mysql-revokes.sql
N StoreHouse/innotop-1.7.1.tar.gz
N StoreHouse/MySQL-shared-community-5.0.83-0.rhel3.i386.rpm
No conflicts created by this import

管理方法:签出,提交,更新等
签出项目到本地
cvs checkout StoreHouse
更新项目
cvs update
添加文件后需要提交
cvs add -m “perl for password create” passwd.pl
cvs commit
提交单个文件,如果修改
cvs commit -m “” db_update_20091011.sql
cvs ci -m ‘DB迁移’ dbupdate.txt

简单测试以下,因为我已经提交了StoreHouse项目,所以/root/Nova下的文件,我可以直接删除,然后再从CVS库中checkout,保持最新或者恢复。

[root@imdba Nova]# rm -rf *
[root@imdba Nova]#
[root@imdba Nova]# cvs checkout StoreHouse
cvs checkout: Updating StoreHouse
U StoreHouse/MySQL-client-community-5.0.83-0.rhel4.i386.rpm
U StoreHouse/MySQL-server-community-5.0.83-0.rhel3.i386.rpm
U StoreHouse/MySQL-shared-community-5.0.83-0.rhel3.i386.rpm
U StoreHouse/Nova.grants.sql
U StoreHouse/auto-export-user-grants.sql
U StoreHouse/cvs-1.11.22-5.el5.i386.rpm
U StoreHouse/db74293_nova_wp_n20090904_329.sql
U StoreHouse/innotop-1.7.1.tar.gz
U StoreHouse/mysql-revokes.sql

提交的所有文件都已经恢复,当然还可以做更新,提交单个文件等等操作。

http://www.imdba.cn/2009/10/14/rhel5-cvs-config-and-use-it/

这篇关于RHEL5 cvs配置和使用简单文档(完结)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/665542

相关文章

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

java变量内存中存储的使用方式

《java变量内存中存储的使用方式》:本文主要介绍java变量内存中存储的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、变量的定义3、 变量的类型4、 变量的作用域5、 内存中的存储方式总结1、介绍在 Java 中,变量是用于存储程序中数据

关于Mybatis和JDBC的使用及区别

《关于Mybatis和JDBC的使用及区别》:本文主要介绍关于Mybatis和JDBC的使用及区别,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、JDBC1.1、流程1.2、优缺点2、MyBATis2.1、执行流程2.2、使用2.3、实现方式1、XML配置文件

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增