一、准备工作
1. 在ubuntu服务器上运行命令安装openssh
$ sudo apt-get -y install openssh-server openssh-client
2. 在ubuntu服务器上运行命令安装git
$ sudo apt-get -y install git
3. 若客户端为windows系统,则请安装Git-1.9.5-preview20150319.exe
4. 若需要和eclipse做联结,请在eclipse上安装EGit组件
二、 客户端操作
1. 创建 SSH 公钥私钥对
打开命令行(windows客户端需在安装完Git-1.9.5-preview20150319.exe后,右键打开Git Bash命令行)
$ ssh-keygen -t rsa
然后一路回车
2. 每个客户端都上传公钥到ubuntu服务器
$ scp ~/.ssh/id_rsa.pub [email protected]:/tmp/hujinzhe.pub(红色为你的公钥名,必须每个人都不同),密码为iyoudoo
以上,[email protected] 里的iyoudoo是用户名,后面的192.168.1.240是服务器的IP地址或域名。
三、 服务器操作
1. SSH登录到远程服务器
$ ssh [email protected]
2. 切换到超级用户
$ sudo su -
3. 安装gitolite
$ apt-get install gitolite
4. 创建gitolite用户及用户组
$ addgroup gitolite
$ adduser --disabled-password --home /home/gitolite --ingroup gitolite gitolite
5. 切换到gitolite用户
$ su - gitolite
6. 运行gitolite安装脚本
$ gl-setup /tmp/hujinzhe.pub(若有多个请运行多次)
四、 配置git仓库的用户权限和项目
1. 在客户端克隆gitolite-admin
$ git clone [email protected]:gitolite-admin
2. 编辑文件gitolite-admin/conf/gitolite.conf
以下是我在的gitolite.conf配置:
前5行配置中,=号前的为组名,=号后的为人员名(和公钥名必须匹配,若不存在会报错),可有多个,用空格分隔
后面的配置中repo后的为项目名,若存在/符号,则/号前的为父目录,/号后的为项目名称
在紧跟repo之后的RW+为读写权限+强制推送权限,RW为读写权限,在权限后的=号之后的为人员名或组名,可有多个,用空格分隔(注:组名必须以@开头),表示该项目谁有指定的什么权限
3. 编辑gitolite-admin/conf/gitolite.conf后,保存,用命令行进入到gitolite-admin目录(windows使用git bash),将代码提交到本地版本库后,并推送到服务器
$ git commit -a -m "注释" (这里不能有中文路径)
$ git push origin master
这样项目的版本库就在服务器生成了,若需要进行版本库的更新上传或克隆,请查看git命
五、 ECLIPSE中从Git版本库导入项目
安装EGit后,在项目列表空白处点击右键 -> import -> git -> Projects from Git
打开新的界面,点击Clone URI,如图
进入配置界面,输入相关的参数,如图
点击下一步,会列出你想要克隆的分支,如图
继续下一步选择保存的目录,一路next,finish,克隆完成。其他的git使用方法请查询相关教程。