前言:之前一直用svn做版本控制,昨天和两个同学接触,发现现在都用git,一个同学总说(gay-t)(gay-t),听的我很尴尬,总觉得gay里gay气的。
#1.安装git
yum install perl openssh git
git --version -- 查看git版本
#2.建立一个git用户,并做初步配置
/* 为什么创建一个用户?这个git用户主要算是一个其他用户访问git的一个入口 */
useradd -m git -s /bin/bash
#一开始,git用户没有权限,需要给上git用户高级的权限
visudo -- 将git用户仿照root写在root用户下面
#把root用户的公共钥匙放入git用户中
#没有的话就创建一个 ssh-keygen -t rsa -- 连续3下enter
#将id_rsa.pub放入 /home/git中并改名叫admin.pub
cp id_rsa.pub /home/git/admin.pub
#3.切换至git用户
su git
# 新建一个目录,用于存放git的全部仓库
mkdir download
cd download
#将官方gitolite下载下来
git clone git://github.com/sitaramc/gitolite
#建一个bin文件夹
mkdir -p $HOME/bin -- 为gitolite的二进制文件生成创建目录
$HOME/bin/gitolite setup -pk ~/admin.pub
#完成后,在/home/git/download/repositories里面,生成两个仓库gitolite-admin.git和test.git,一个是管理仓库用的,另一个是测试用的;下面我们主要对gitolite-admin.git仓库进行操作,就可以管理服务器上的全部仓库了。
#4.测试链接,使用root用户
cd ~
git clone git@localhost:gitolite-admin.git
#5.windows上使用git
#安装git 小乌龟git 和语言包
#参考文档
https://gitforwindows.org/ -- git下载地址
https://tortoisegit.org/download/ -- 小乌龟git和语言包下载地址
#安完了基本是这个样子的
#6.windows生成密钥
#打开Git目录下的Git Bash,输入ssh-keygen,回车(连续3次)
#在C盘用户下,个人账户中隐藏文件夹.ssh中生成了 id_rsa id_rsa.pub
#7.使用gitolite-admin进行用户管理,前文部分在root文件夹下克隆了gitolite-admin文件夹,文件夹可用来维护gitolite项目。
#将个人pc重命名后的dani.pub文件放入keydir中
#编辑conf中的gitolite.conf文件
vi conf/gitolite.conf -- 填入
repo newProject
RW+ = dani
#保存并退出
#根据官方文档,输入如下指令即可提交至gitolite,创立新项目newProject
git add conf
git add keydir
git commit -m "added newProject, gave access to dani"
git push
#但当我提交到第三句时,显示错误
#根据错误提示,运行
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
#再继续运行上方语句,成功。下方语句也可。
git add .
git commit -am 'update msg'
git push origin master
#8.windows客户端克隆项目,需要配置密钥信息
#打开TortoiseGit安装目录下的bin目录,打开puttygen.exe,点击load选择之前生成的私钥,然后点击”save private key“保存成ppk文件。
#打开TortoiseGit的Settings,点击左侧Git,然后点击右面板的全局配置设置name为刚刚修改发给管理员的名称,点击保存。
#系统菜单栏中点击TortoiseGit目录下的Pageant,右下角多出一个图标,点击图标,点击add key选择刚刚保存的ppk文件闭窗口
#clone项目(url:git@IP:项目名.git)