在CentOS上安装Git
2012-06-17 21:37
363 查看
yum install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc autoconf make
wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
tar xzvf git-latest.tar.gz
cd git-2012-06-17/ (查看解压出来的文件夹)
安装
autoconf
./configure --with-curl=/usr/local
make && make install
查看版本号,确实git是否安装成功
git --version
指定用户名和电子邮件地址
git config --global user.name “GIT Admin”
git config --global user.emal test@test.com
2.安装gitosis
yum install python python-setuptools
git clone git://github.com/res0nat0r/gitosis.git
cd gitosis
python setup.py install
3.在开发机器上生成公共密钥(用来初始化gitosis)
#不需要密码,一路回车就行(在本地操作)
ssh-keygen -t rsa
# 上传你的ssh public key到服务器
scp ~/.ssh/id_rsa.pubroot@xxx:/tmp/
4.初始化gitosis
# 新增一个git用户
adduser git
passwd git
# 切换倒git用户下
su - git
# id_rsa.pub是刚刚传过来的
gitosis-init </tmp/id_rsa.pub
# id_rsa.pub已经无用,可删除.
rm /tmp/id_rsa.pub
5.获取并配置gitosis-admin
# 在本地执行,获取gitosis管理项目
git clonegit@xxx:gitosis-admin.git
# 编辑gitosis-admin配置文件
vi gitosis-admin/gitosis.conf
在gitosis.conf底部增加
[group 组名]
writable = 项目名
members = 用户 # 这里的用户名字 要和 keydir下的文件名字相一致
# 要记住的是,每次添加新文件必须执行git
git commit -a -m “xxx xx” add .,或者gitadd filename,如果没有新加文件,只是修改的话就可以执行此句。
#修改了文件以后一定要PUSH到服务器,否则不会生效。
git push
新建项目
到此步就算完成gitosis的初始化了。接下来的是新建一个新项目到服务器的操作,如第5步中配置gitosis.conf文件添加的是
[group project1] # 组名称
writable = project1 # 项目名称
members = xxx # 用户名xxx为[group gitosis-admin]中的members一样
# 记得执行
git commit -a -m “添加新项目project1“
git push
# 进入到项目目录
# project1要与gitosis.conf文件配置一致
cd /home/用户/project1
# .gitignore可以将你不需要上传的文件无视掉
vi.gitignore
config/database.yml
Gemfile.lock
Gemfile.local
#git初始化
git init
# 新增文件 留意后面有一个点
git add .
# 然后就到把这个项目放到服务器上去
git commit -a -m “初始化项目project1″
git remote add origingit@xxx:project1.git # xxx为服务器地址
git push origin master
# 也可以把上面的两步合成一步
git push git@xxx:project1.gitmaster
公密未找到
解决
上传id_pub.rsa到keydir并改为'gitosis帐号.pub'形式,如miao.pub。扩展名.pub不可省略
gitosis.conf中的members与keydir中的用户名不一致,如gitosis中的members =foo@bar,但keydir中的公密名却叫foo.pub
解决
使keydir的名称与gitosis中members所指的名称一致。
改为members = foo 或 公密名称改为foo@bar.pub
openssl-devel perl-CPAN
wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
tar xzvf git-latest.tar.gz
cd git-2012-06-17/ (查看解压出来的文件夹)
安装
autoconf
./configure --with-curl=/usr/local
make && make install
查看版本号,确实git是否安装成功
git --version
指定用户名和电子邮件地址
git config --global user.name “GIT Admin”
git config --global user.emal test@test.com
2.安装gitosis
yum install python python-setuptools
git clone git://github.com/res0nat0r/gitosis.git
cd gitosis
python setup.py install
3.在开发机器上生成公共密钥(用来初始化gitosis)
#不需要密码,一路回车就行(在本地操作)
ssh-keygen -t rsa
# 上传你的ssh public key到服务器
scp ~/.ssh/id_rsa.pubroot@xxx:/tmp/
4.初始化gitosis
# 新增一个git用户
adduser git
passwd git
# 切换倒git用户下
su - git
# id_rsa.pub是刚刚传过来的
gitosis-init </tmp/id_rsa.pub
# id_rsa.pub已经无用,可删除.
rm /tmp/id_rsa.pub
5.获取并配置gitosis-admin
# 在本地执行,获取gitosis管理项目
git clonegit@xxx:gitosis-admin.git
# 编辑gitosis-admin配置文件
vi gitosis-admin/gitosis.conf
在gitosis.conf底部增加
[group 组名]
writable = 项目名
members = 用户 # 这里的用户名字 要和 keydir下的文件名字相一致
# 要记住的是,每次添加新文件必须执行git
git commit -a -m “xxx xx” add .,或者gitadd filename,如果没有新加文件,只是修改的话就可以执行此句。
#修改了文件以后一定要PUSH到服务器,否则不会生效。
git push
新建项目
到此步就算完成gitosis的初始化了。接下来的是新建一个新项目到服务器的操作,如第5步中配置gitosis.conf文件添加的是
[group project1] # 组名称
writable = project1 # 项目名称
members = xxx # 用户名xxx为[group gitosis-admin]中的members一样
# 记得执行
git commit -a -m “添加新项目project1“
git push
# 进入到项目目录
# project1要与gitosis.conf文件配置一致
cd /home/用户/project1
# .gitignore可以将你不需要上传的文件无视掉
vi.gitignore
config/database.yml
Gemfile.lock
Gemfile.local
#git初始化
git init
# 新增文件 留意后面有一个点
git add .
# 然后就到把这个项目放到服务器上去
git commit -a -m “初始化项目project1″
git remote add origingit@xxx:project1.git # xxx为服务器地址
git push origin master
# 也可以把上面的两步合成一步
git push git@xxx:project1.gitmaster
三、常见问题
首先确定 /home/git/repositories/gitosis-admin.git/hooks/post-update 为可执行即属性为 07551. git操作需要输入密码
原因公密未找到
解决
上传id_pub.rsa到keydir并改为'gitosis帐号.pub'形式,如miao.pub。扩展名.pub不可省略
2. ERROR:gitosis.serve.main:Repository readaccess denied
原因gitosis.conf中的members与keydir中的用户名不一致,如gitosis中的members =foo@bar,但keydir中的公密名却叫foo.pub
解决
使keydir的名称与gitosis中members所指的名称一致。
改为members = foo 或 公密名称改为foo@bar.pub
相关文章推荐
- 在CentOS上安装Git
- 怎样在 RHEL、CentOS 和 Fedora 上安装 Git 及设置 Git 账号
- centos7下git安装及使用
- 在linux(CentOS 6.5)上安装git
- CentOS源码安装git-2.3.0
- CentOS 如何安装git server + Gitolite 【配置不成功需要再测试2015-8-20】
- centos7.3下安装git2.9.5
- Centos安装Git
- CentOS 6.3下使用Gitosis安装搭建Git Server教程
- Centos安装(更新)git
- centos 源码安装git
- Centos之Git版本管理工具安装-yellowcong
- centos 6.5安装git
- CentOS 6.x安装配置GitLab(社区或个人Git管理)
- 在centOs系统下安装个配置git
- CentOS上安装Git
- Centos 安装Git步骤及方法总结
- CentOS 5 上安装git
- 记录 公司服务器centos安装git
- centos源码编译安装最新版git