linux git配置服务器,linux的git服务器和本地git客户端搭建

一:Git 服务器配置命令

1.安装git 或者升级git

sudo apt-get install git

sudo apt-get install git

2.服务器git版本

git —version

创建git仓库

mkdir .git

进入到该目录下,初始化git repository

cd .git

git --bare init

3.远程仓库的地址一般组成的格式是:

@:

仓库全路径这个也不难理解,直接在.git目录下输入pwd,获取.git的全路径。

那么例如整个远程仓库的地址就是:

git@120.21.11.21:/home/git/gitRepository/pythonServer/project.git

6.本地仓库与远程仓库绑定

故名思议,就是让本地的git仓库和远程的git仓库进行绑定。这里需要用到的是之前记下来的远程仓库的地址,也就是

root@120.21.11.21:/home/git/gitRepository/pythonServer/project.git

命令行的绑定方式是:

git remote add origin git@120.21.11.21:/home/git/gitRepository/pythonServer/project.git

7.生成客户端ssh公钥git的远程推送功能需要用到ssh协议,linux自带ssh工具,可以很方便地满足我们的需求。

首先确认一下客户端本地是否已经存在ssh的公钥,可以直接输入

cat ~/.ssh/id_rsa.pub

如果返回了一串以ssh-rsa开头的字符串的话则说明之前已经存在公钥了,可以直接将这一串字符串复制下来。如果该条命令提示文件不存在或者是返回值为空的话,则需要创建公钥,只需要在命令行输入:

ssh-keygen

默认直接按回车,就会自动在~/.ssh/ 目录下创建id_rsa.pub,并且生成公钥,此时再用上面的方法,复制公钥。

8.服务端授权ssh公钥接下来要做的是将客户端的公钥注册到服务端中,打开服务端控制台,输入:

cat "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9+VK1abwzJg+VjxGwpwKnsYU3eBEjXolQKUfKxEAMO9DREvdFrvIF5KhBE9HJTp7CEFcAfgP6xkJdxchQcEUyPyda9mIz6M4OOeuuLcxJcrqqJWTN0Jj78I/kDUZUJZF7bcV4q0CyeZG1fo5ckjxOmFaYkCGcq8vmeuFySFpco71UMkudzclrtGa53AvfmuOP1u96CEud78p2gYrPP5qr9ZYBNM+E290ddGMV61rnEiL7taAsXMGpuCQSbI0/zBJ3YXvN/lJSOVHFSeMFbKv7WDSJFSiBVHXjtcDa5RvzzWaFMBV8+SW4zluhijp6Dvb7pHBaLhLg/JvOixmR1/or OboBear" >> ~/.ssh/authorized_keys

这双引号里面一大串的就是你之前复制的公钥,整句命令所做的事情就是将客户端的公钥添加到服务端的ssh授权表中。

9、实现自动同步到站点目录(www)

就比如刚才我们往远程仓库推送了index.php文件,虽然提示推送成功,但是我们现在在服务器端还看不到效果,心理总是不爽。又比如我写了个html页面,我想在站点中马上看到,那自动同步就派上用场了。

自动同步功能用到的是 git 的钩子功能,

服务器端:进入裸仓库:/home/testgit/sample.git

cd /home/testgit/sample.git

cd hooks

//这里我们创建post-receive文件

vim post-receive

//在该文件里输入以下内容

!/bin/bash

git --work-tree=/home/www checkout -f

//保存退出后,将该文件用户及用户组都设置成git

chown git:git post-receive

//由于该文件其实就是一个shell文件,我们还应该为其设置可执行权限

chmod +x post-receive

二:git 本地配置命令

1.安装git

检测是否安装git:git --version

debian系列安装命令:sudo apt-get install git

windows系列:一键安装msysgit

2.创建用户

git config --global user.name "name"

git config --global user.email "email@xx.xxx"

3.创建并初始化一个空仓库

mkdir warehouse_name //新建文件夹作为仓库

cd warehouse_name //进入文件夹

git init //初始化为仓库,自动生成.git

4.提交文件到仓库

git add file1 file2 ... //将文件放入缓冲区

git commit -m "提示信息" //将缓冲区的文件全部提交到仓库,-m后加提示信

git status //查看缓冲区状态

git diff //查看更改的内容

5.版本回退

git log 或 git log --pretty=oneline //查看历史版本

git reset --hard HEAD^ //相对于当前版本的回退,其中HEAD表示当前>版本,HEAD表示上一版本,HEAD^表示上上版本,以此类推

git reset --hard commit_id //指定commit_id的版本回退,commit_id为文件hash值,可只写几位

git reflog //显示历史输入命令

6.小结

刚初始化产生.git文件夹实质是版本库

add就是把工作区的文件添加到版本库中的缓存区(stage),commit就是将缓存

区(stage)中的文件放进master区中并清空缓存区(stage)

7.撤销操作和删除操作

git checkout -- filename //若缓存区有文件,则撤销到缓存区文件,若没

有,则回到当前版本库HEAD相同状态,若已经提交版本库,则参考版本回退

git reset HEAD filename //把缓存区的修改撤销掉,重新放回工作区

git rm & git commit //删除版本库里的文件并更新

本地git生成公钥

math?formula=ssh-keygen%20-t%20rsa%20%2F%2F%E7%94%9F%E6%88%90key%E8%AF%81%E4%B9%A6%E5%85%AC%E9%92%A5%E7%A7%81%E9%92%A5%20%E4%B8%80%E8%B7%AF%E5%9B%9E%E8%BD%A6%E5%B0%B1ok%E4%BA%86 cat .ssh/id_rsa.pub //打开公钥

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值