Management
Snow Leopard Server 上配置 Gitosis 笔记
Jul 21st
为了迁移项目 Git 仓库到 Mini Server 上,需要在 Snow Leopard Server 上配置一下 Gitosis,但是 Mac OS X 和 Linux 不太一样,有些地方需要特殊处理一下。
安装 Gitosis
Gitosis 的安装就不多说,在参考文档2中有。
添加 Git 用户组及用户
添加用户可以用参考文档1中的方法来创建,没有尝试直接用 OSX 的用户管理来创建是否可用。
# 这里的用户组和用户ID 用 401,但是实际用时需要根据服务器上的情况来创建 # 我在使用时 401 这个 gid 就已经被占用了,可以使用以下两个命令看看要用的 # ID 是否已经被用了。 sudo dscl . list /Users uid sudo dscl . list groups gid # 创建用户组 git sudo dscl . create groups/git sudo dscl . create groups/git gid 401 # 创建用户 git sudo dscl . create users/git sudo dscl . create users/git uid 401 sudo dscl . create users/git NFSHomeDirectory /Users/git sudo dscl . create users/git gid 401 sudo dscl . create users/git UserShell /bin/bash sudo dscl . create users/git Password '*' # 创建用户主目录,Git 仓库就要放在里面 sudo mkdir /Users/git sudo chown git /Users/git sudo chgrp git /Users/git # 下面这一句是把 git 用户添加到可以使用 ssh 访问的用户组里面 # 如果不执行这句的话,git push 或者 git pull 等等的时候会出错 sudo dscl . -append /Groups/com.apple.access_ssh GroupMembership git
配置 Gitosis
这个在参考文档2中都有详细说明。
参考文档
- git hosting with Leopard, Ian White
- 权限管理器 Gitosis, Pro Git
- Adduser for Mac OS X = dscl + niutil + nicl, otaku ramblings
Subversion 配置笔记
May 12th
在决定转向SVN之后,就去下了个Subversion 1.4.6装上,但是默认的情况下,SVN并不像CVSNT那样提供一下基于网络的访问接口,因此在一开始,我只能用TortoiseSVN使用file:///协议来访问版本库。
这样终究不是个办法,因此去网上找了找,发现SVN本身也提供将SVN安装成服务的方法,只要自己添加一下就行了。使用以下命令:
sc create svnserve binpath= ”c:\svnserve\svnserve.exe –service
–root c:\repos” displayname= ”Subversion” depend= tcpip start= auto
注意,如果你是在Vista下面的话,需要使用管理员权限来添加服务。还有一点就是,在输入命令的时候,属性名称后面跟着=,不能有空格,但是=与后面的值之间必须有一个空格。
配置之后就可以用svn://协议来访问版本库了。
配置网络访问之后,还需要设置一下访问权限,这个在版本库conf目录里的svnserve.conf里配置。
找到 [general] 段,可以从注释里看到配置匿名访问、密码数据库等等选项。其中 anon-access 是用来设定版本库的匿名访问权限,auth-access 是用来设定登录用户的访问权限,password-db 是用来设定用户密码数据库,一般取默认 passwd 就行了,realm 是用来设定版本库的域,如果两个版本库的的域一样,那么它们就会使用同一个用户密码数据库。
用户权限有 none、read、write 三种,我的配置如下:
[general]
anon-access = none
auth-access = write
password-db = passwd
realm = my subversion
最后,在同个目录下的 passwd 文件中添加用户名密码即可,格式为“用户名 = 密码”,一行一个帐号。
