Debian squeeze下安装git,svn配置以及其它。

1 安装

a: 直接安装

先搜索下git的包有哪些

aptitude show git

[php]  view plain copy
  1. Package: git                               
  2. New: yes  
  3. State: installed  
  4. Automatically installed: yes  
  5. Version: 1:1.7.2.5-3  
  6. Priority: optional  
  7. Section: vcs  
  8. Maintainer: Gerrit Pape <[email protected]>  
  9. Uncompressed Size: 10.8 M  
  10. Depends: libc6 (>= 2.3.4), libcurl3-gnutls (>= 7.16.2-1), libexpat1 (>= 1.95.8),  
  11.          zlib1g (>= 1:1.2.0), perl-modules, liberror-perl  
  12. Recommends: patch, less, rsync, ssh-client  
  13. Suggests: git-doc, git-arch, git-cvs, git-svn, git-email, git-daemon-run,  
  14.           git-gui, gitk, gitweb  

aptitude install git

aptitude install git-doc git-svn git-email git-gui gitk gitweb git-core git-all

老的版本,debian lenny 

aptitude install git-core

aptitude install git-doc git-svn git-email git-gui gitk


b:源码安装

访问http://git-scm.com 下载git源码包

tar -jxvf git-1.xxxx.tar.bz2

cd git-1.xxxx/

安装的在install文件里,直接参考下就可以完成安装

make prefix=/usr/local all

make prefix=/usr/local install

 文档这些安装方法

make prefix=/usr/local doc info

make prefix=/usr/local install-doc install-html install-info


2 使用

git --version 查看git版本

git config --global 本用户的配置全局

git config --system 配置系统的参数

git config --global user.name "rainysia"

git config --global user.email [email protected]

git config --system alias.st status   把git status简化成git st

git config --system alias.ci commit 把git commit 简化成git ci

git config --system alias.co checkout 把git checkout 简化成git co

git config --system alias.br branch 把git branch 简化成alias br

如果要配置本用户的,就把--system改成--global

git config --global color.ui true 开启颜色显示


3 建立工作区

mkdir /home/gitwork

cd /home/gitwork

git init

[php]  view plain copy
  1. Initialized empty Git repository in /home/gitwork/.git/  

查看git config --list 

查看git status 需要在gitwork目录下使用,通过strace -e ‘trace=file' git status 来跟踪执行git status的磁盘访问


**********************************************************************************************************

安装svn 

#aptitude install libapache2-svn subversion subversion-tools

创建库

#svnadmin create /home/svn

导入源码

 #svn import  /home/project1 file:///home/svn/project1

显示内容

#svn list file:///home/svn/project1

(如果没有安装openssl 就不能支持https,需要提前安装 aptitude install opensll)


也可以这样

#mkdir /home/svn

#chown www-data:www-data -R /home/svn

#chmod 770 -R /home/svn


svn的用户密码配置 /etc/apache2/dev_svn.passwd

 #/usr/lib/htpasswd -c /etc/apache2/dav_svn.passwd admin

New password:

Re-password:

Adding password for user admin

存的密码建议用SHA   htpasswd -s 

创建权限配置 /etc/apache2/dav_svn.authz

[groups]

admin=admin,rainysia

guest=test1,test2

[rainysia:/] 

*=           #默认禁止所有用户访问

@admin=rw #admin组有rw权限

test1=r  #用户test1有r权限

配置模块 /etc/apache2/mods-available/dav_svn.conf

创建 svn location,指定 svn 目录,认证方式,认证信息;
指定 dav_svn.passwd 用户密码配置文件路径
指定 dav_svn.authz 目录权限配置文件路径。

<Location /svn>
  DAV svn
  SVNParentPath /home/svn
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  AuthzSVNAccessFile /etc/apache2/dav_svn.authz
  Require valid-user
</Location>

创建版本库

#su - www-data

#svnadmin create /home/svn/rainysia

#/etc/init.d/apache2 restart

#svnserve -d

浏览器直接访问http://localhost/svn/rainysia


新建用户 

#/usr/lib/htpasswd -s /etc/apache2/dav_svn.passwd 用户名

password

re-password

删除的话直接删除就是了 /etc/apache2/dav_svn.passwd


注意如果apache中已经开启了 mod_dav_svn.so  mod_authz_svn.so就需要把注销掉


本地 和 远程 dataDir 直接是路径 或者http地址 https svn:// 都可以

#cd /home/svn

#svn checkout http://项目svn地址

#svn add dataDir 

#svn commit -m "change code info"   #提交到版本库

#svn list dataDir    #显示

#svn update -r 200 dataDir  #把dataDir目录还原到版本200

#svn delete dataDir -m "del info"  #删除

#svn log dataDir  #查看变更记录

#svn info dataDir  #查看文件详细信息


如果svn checkout https:// 出错

svn: OPTIONS of 'https://HOSTNAME/svn/repo': SSL handshake failed: SSL error: Key usage violation in certificate has been detected.

那么需要运行

#mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.old

#ln -s /usr/lib/libneon.so.27 /usr/lib/libneon-gnutls.so.27

如果没有libneon 那么就先安装再mv

#aptitude install libneon27-dev

然后再次checkout 提示输出root密码随便乱输个 然后再提示用户名和密码 输入就可以co出来了


要是ubuntu的.出现这个问题.

OPTIONS of <url>': SSL handshake failed: SSL disabled due to library version mismatch

解决方法如下:

卸载 libneon 包

#apt-get remove libneon27

安装需要的 libssl 依赖。

#apt-get install libssl0.9.8

http://packages.debian.org/squeeze/libneon27 的页面底部有最新的 libneon 包,下载系统对应的安装包,然后用命令安装.

#wget http://ftp.cn.debian.org/debian/pool/main/n/neon27/libneon27_0.29.3-3_amd64.deb

#dpkg -i libneon27_0.29.3-3_amd64.deb

#mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.old

#ln -s /usr/lib/libneon.so.27 /usr/lib/libneon-gnutls.so.27


你可能感兴趣的:(Debian squeeze下安装git,svn配置以及其它。)