环境
git-server 192.168.192.130 充当中央服务器
git-client 192.168.192.131
部署
- 安装 (所有的机器都要安装)
yum install -y git
git --version
- 添加邮箱和用户(所有的机器都要添加,只要邮箱和用户不一样就可以)
git config --global user.email "soho@up.com"
git config --global user.email "soho@up.com"
使用
git-server
- 创建一个空目录
mkdir /git-test #创建目录
useradd git # 创建用户
passwd git #给用户设置密码
cd /git-test/
- 通过git init命令把这个目录变成Git可以管理的仓库:
第1种情况:
可以改代码,还能上传到别人的机器,别人也能从你这里下载但是别人不能上传代码到你的机器上。
第2种情况:
只是为了上传代码用,别人从这台机器上下载代码也可以上传代码到这台机器上,但是很少直接修改这台机器上的文件类似于github,经常用于核心代码库。
方式1
.创建本地库:
这样创建的库其他机器可以clone(克隆),但是没办法push(上传)
[root@vm20 gittest]# git init ----开发的本地库(初始化)
初始化空的 Git 版本库于 /gittest/.git/
方式2
.创建裸库: 适用与作为远程中心仓库使用
创建裸库才可以从别处push(传)代码过来,使用–bare参数------裸库
注意
:默认会把当前所在目录做成库目录,可以在命令后面跟目录指定子目录为版本库
- 创建裸库
git init --bare testgit
chown git.git /git-test -R
cd testgit/ && ls
git-client
- 配置免密登录
ssh-keygen
ssh-copy-id -i git@192.168.192.130 #将秘钥传输到git服务器中的git用户
- 克隆git仓库
git clone git@192.168.192.130:/git-test/testgit/
git的相关操作
添加文件到缓存区 git add 文件名提交缓存区里的修改到版本库的分支 git commit -m "版本描述"
查看版本号(类似于快照) git log
查看消失的版本号 git reflog
查看git状态 git status
回到上一个版本 git reset --hard HEAD^
回到指定的版本 git reset --hard 版本号
删除文件 git rm 文件名
代码上传 git push origin master