安装
sudo apt-get install git
初始化仓库 作为远程仓库
## 在/home/sati/git 目录下初始化:
git init --bare test.git
##在/home/sati/git下生成test.git 目录
另一台机器做客户端
客户端已经对远程git 仓库服务器做了秘钥登录
# 克隆远程仓库
git clone sati@192.168.8.174:test.git
git clone sati@192.168.8.174:/home/sati/git/test.git
进入该仓库目录:
cd /home/sati/git/test
##配置用户及邮箱
git config --global user.email "you@example.com"
git config --global user.name "sati-u1"
添加文件:
echo "dddddd" > indes.html
git add .
git commit . -m "indes"
##推送到远程仓库
git push sati@192.168.8.174:/home/sati/git/test.git master
centos 安装
https://www.jianshu.com/p/73638eb9e215
#删除原git
yum remove git
#安装新版Git
--安装gcc
yum install gcc
--安装g++
yum install gcc-c++
--安装编译所需的包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
wget -P /usr/src/git-2.12.2 https://www.kernel.org/pub/software/scm/git/git-2.12.2.tar.gz
--切换到指定目录
cd /usr/src/git-2.12.2/
--解压源码包
tar zxvf git-2.12.2.tar.gz
--进入解压目录
cd git-2.12.2/
--配置安装目录并编译和安装
./configure --prefix=/usr/local/git-2.12.2 && make install
--将编译好的git-2.12.2 bin目录添加到bashrc中,相当于添加全局变量
echo 'export PATH=$PATH:/usr/local/git-2.12.2/bin' > /etc/profile.d/git.sh
--使bashrc立即生效,全局变量立即生效
source /etc/bashrc
--查看git版本
git --version
--将git设置为默认路径,不然后面克隆时会报错
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
至此,CentOS 就安装上了最新版本的 Git。
#创建一个git用户组和用户,用来运行git服务
$ groupadd git
$ useradd git -g git
$ passwd git #参数是用户名
最好切换到git用户 不然后面新建的git仓库都要改权限 烦烦烦!!
$ su - git
#创建证书登录
mkdir /home/git/.ssh
chmod 700 .ssh
cd /home/git/.ssh
ssh-keygen -t rsa //默认会生成~/.ssh/id_rsa.pub公钥文件。
初始化完出现3个文件
authorized_keys
id_rsa
id_rsa.pub
chmod 600 authorized_keys
vim authorized_keys
把你客户端生成的公钥复制进去就OK了
初始化Git仓库
$ cd /home/git
$ git init --bare test.git
Initialized empty Git repository in /home/git/test.git/
以上命令会创建一个空仓库,服务器上的Git仓库通常都以.git结尾。
本地克隆仓库
$ git clone git@your-ip:test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
your-ip 为您 Git 所在服务器 ip