博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CVS在MAC OSX中的安装和使用 (转)
阅读量:2499 次
发布时间:2019-05-11

本文共 3341 字,大约阅读时间需要 11 分钟。

CVS在MAC OSX中的安装和使用 (转)[@more@]

一、编译和

  在MAC OSX中,如果安装了MAC OSX Developer Tools的话,CVS已经缺省的安装了。

  如果想使用最新的CVS的话,我们可以通过到最新
  版本的CVS。假设CVS源码包为cvs.tar.gz,我们可以使用下面的命令进行
  编译和安装。

  zxvf cvs.tar.gz

  cd  cvs
  ./configure --without-gss
  make
  sudo make install

二、CVS

  首先创建一个CVS仓库,在console窗口中间如入下命令

  mkdir /usr/cvs

  cvs -d /usr/cvs init

  假设使用的是d的话,我们可以通过使用如下的命令来配置CVS服务器

  假设CVS仓库的路径是/usr/cvs

  cd /etc
  sudo vid.conf
  在的末尾添加如下信息
  cvspserver  stream  tcp nowait    /usr/bin/cvs  cvs -f -t --allow-root=/usr/cvs pserver
  然后通过 kill -HUP `cat /var/run/inetd.pid`来重起inetd服务。

  如果系统使用的是xinetd的话,我们可以通过以下操作来配置CVS服务器

  在 /etc/xinetd.d/目录中创建一个cvspserver文件,内容如下

  service cvspserver

  {
  disable  = no
  protocol  = tcp
  socket_type = stream
  wait  = no
  user  = root
  server  = /usr/bin/cvs
  server_args = -f --allow-root=/usr/cvs pserver
  passenv  =
  groups  = yes
  }
  然后通过 kill -HUP `cat /var/run/xinetd.pid`来重起inetd服务。

三、CVS客户端账号设置

 
  通过上面两个步骤,CVS服务器已经基本上配置完成,但是,现在还需要进行
  一些设置才能让CVS真正在项目开发中起到作用。

  共有两种CVS的和账号设置。

  一种是在中建立一个CVS用户组,然后让添加的CVS用户属于CVS用户
  组,这样CVS用户就可以对CVS仓库中的文件进行访问和修改了。
  另外一种方法是在操作系统中的只设一个CVS用户,然后通过设置CVSROOT仓库
  中的passwd文件来达到多个用户对CVS的访问。下面我将详细讲述这些方法。

  方法一:

  首先使用X Application/Utilities中的NetInfo工具添加一个cvsgroup组,
  将需要使用CVS的用户名称添加到cvsgroup组中的users项中。
  然后修改/usr/cvs的owner属性,可以使用如下命令
  chown -R cvs.cvsgroup /usr/cvs
  这条命令将分别设置CVS仓库的拥有用户为cvs和拥有组为cvsgroup,因此如果
  用户属于cvsgroup的话,都可以多CVS仓库中的文件进行读写。
  用户可以通过如下命令进行测试
  cvs -d :pserver:cvs@127.0.01:/usr/cvs login

  方法二:

  cd /usr/cvs/CVSROOT
  touch passwd
  这个passwd文件将作为CVS的用户和密码配置文件。
  passwd文件中的配置格式如下
  cvsuser1:xxxx:cvs
  cvsuser2:xxxx:cvs
  其中cvsuser1,cvsuser2是CVS的用户,xxxx使用户密码,cvs是真正的系统中存
  在的CVS用户,标示为xxxx的用户密码是使用cypto系统创建的用户密码。
  可以使用下面的脚本生成。

  vi pwdgen.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} ";

  chmod +x pwdgen.pl

  在console窗口中运行pwdgen.pl,输入用户名,将输出的密码拷贝到passwd文件

  中即可。

  用户可以通过writer和reader文件控制cvs用户的读写。

  在/usr/cvs/CVSROOT中,键入如下命令:

  touch writer

  touch reader
 
  然后只需将需要控制权限的用户名增加到文件中即可,比如:
  cat cvsuser1 >> writer
  cat cvsuser1 >> reader
  cat cvsuser2 >> reader

  用户可以通过如下命令进行登陆测试

  cvs -d :pserver:cvs@127.0.01:/usr/cvs login

四、CVS设置

 
  CVSWeb是一个基于Web的CVS前端工具,用户可以通过浏览CVS仓库中的代码和
  进行比较。

  CVSWeb得下载地址是.org/projects/cvsweb.html#s">http://www..org/projects/cvsweb.html#downloads。

  也可以通过如下地址下载/cvsweb/" rel="nofollow">http://www.spaghetti-code.de/software/linux/cvsweb/。
  可以通过如下命令配置CVSWeb:

  cd /usr

  chmod 775 cvs
  cp cvsweb./Library/WebServer/CGI-Executables
  cp cvsweb.conf /Library/WebServer/CGI-Executables

  cd /Library/WebServer/CGI-Executables

  vi cvsweb.cgi

  修改如下项为

  $config = $ENV{'CVSWEB_CONFIG'} || '/Library/WebServer/CGI-Executables/cvsweb.conf';
 
  vi cvsweb.conf
  修改 %CVSROOT = (
  'Your Project" = '/usr/cvs'
  )
  修改$cvstreedefault = 'Your Project'

  然后在系统预置的共享项中启动个人Web共享。

  这样,就可以通过对CVS进行访问了。

五、CVS的使用

  1.import一个项目
  import的作用是将一个项目纳入CVS的代码管理中,假设用户有一个项目处于/project/test
  中,我们可以
  cd /project/test
  cvs -d :pserver:cvsuser@localhost:/usr/cvs import -m "Import Project"  test releae1 start
  这样就将一个项目导入到了CVS仓库中。
  2.checkout一个项目
  checkout的作用是将源代码从服务器上取回
  cvs -d :pserver:cvsuser@localhost:/usr/cvs checkout test
  3.update一个项目
  cvs -d :pserver:cvsuser@localhost:/usr/cvs update

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10748419/viewspace-958872/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10748419/viewspace-958872/

你可能感兴趣的文章
.Net图表开发工具JDash.Net现及设计Dashboard
查看>>
Gradle gitignore Gradle 模式 上传SVN 要忽略的文件
查看>>
python概述
查看>>
【全网首发】使用vs2017+qt5.12.4编译64位debug和release的qgis3.4.9
查看>>
数学之美系列二:谈谈中文分词
查看>>
poj3292 Semi-prime H-numbers 2012-09-05
查看>>
asp.netmvc部署到linux(centos)
查看>>
2013年总结
查看>>
编码GBK的不可映射字符 以及 非法字符“\ufeff”
查看>>
让IE的地址栏在弹出窗口也显示
查看>>
angular-xeditable
查看>>
PHP任意文件包含绕过截断新姿势
查看>>
Programming In Scala笔记-第七章、Scala中的控制结构
查看>>
oracle用户创建及权限设置
查看>>
图像处理中双线性插值
查看>>
Flooded! UVA - 815 (sort排序)
查看>>
Problem G: STL——整理唱片(list的使用)
查看>>
sql
查看>>
17.tb幻灯片上下滑动;
查看>>
Mac的快捷键
查看>>