yum install curl curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl perl-devel asciidoc xmlto docbook2x
https://mirrors.edge.kernel.org/pub/software/scm/git/
tar -zvxf git-2.15.0.tar.gz
make configure
./configure --prefix=/usr/local/git
make all doc info
sudo make install install-doc install-html install-info
或yum install -y git
启动git服务
git daemon --verbose --export-all --base-path=/path/to/your/repositories
创建一个git用户组和用户,用来运行git服务:
groupadd git
adduser git -g git
passwd git,输入2次密码
把我们的公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
如果没有该文件创建它:
$ cd /home/git/
$ mkdir .ssh
$ chmod 700 .ssh
$ touch .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
/etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置
~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户
配置用户信息
git config --global user.name "git"
git config --global user.email 19042709@xx.com
git config --global user.password "123456"
检查配置信息
$ git config --list
user.name=19042709
$ git config user.name
19042709
在现有目录中初始化仓库
git init
git init --bare autotest.git
二、客户端
拉取分支
git clone http://邮箱(或用户名):密码@仓库
或
git clone git@10.243.9.157:/homt/gitrepo/autotest.git,输入设置的git密码
git remote add origin git@10.243.9.157:/homt/gitrepo/autotest.git
对文件进行追踪与暂存
git add <filename>
touch a.txt
git add a.txt
配置用户信息,否则commit不知道who
git config --global user.name "git"
git config --global user.email 19042709@xx.com
提交更新到Git仓库
git commit -m "这是第一次提交"
git commit -am "-a参数跳过add 全部提交被跟踪的文件"
git commit --amend -m "取消上一次暂存结果"
克隆仓库
git clone <repo> <directory>
检查当前文件状态
git status
查看更新
git diff
移除文件 这将连带移除工作目录下文件
git rm <file>
移动文件
git mv file_from file_to
查看提交记录
git log
取消暂存文件
git reset HEAD file
查看远程仓库
git remote -v
添加远程仓库
git remote add <shortname> <url>
创建分支
git branch <branchname>
切换分支
git checkout <branchname>
合并分支
git merge <brabchname>
获取新提交
git fetch
远程拉取合并
git pull origin master
#效果等同于两个命令
git fetch
git merge
远程推送
git push origin master