linux上搭建git服务器之5(git服务器)

4 篇文章 0 订阅

正文

参考 https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E5%8D%8F%E8%AE%AE

1 协议

1)本地协议
克隆一个本地版本库,可以执行如下的命令:

$ git clone /srv/git/project.git

或你可以执行这个命令:

$ git clone file:///srv/git/project.git

如果在 URL 开头明确的指定 file://,那么 Git 的行为会略有不同。 如果仅是指定路径,Git 会尝试使用硬链接(hard link)或直接复制所需要的文件。 如果指定 file://,Git 会触发平时用于网路传输资料的进程,那样传输效率会更低。

2)HTTP 协议

3)SSH 协议
通过 SSH 协议克隆版本库,你可以指定一个 ssh:// 的 URL:

$ git clone ssh://[user@]server/project.git

或者使用一个简短的 scp 式的写法:

$ git clone [user@]server:project.git

  1. Git 协议

2 建造一个基于ssh的git服务器

1)首先得有个本地仓库,参考前几节的内容,创建自己的本地仓库

#进入目标目录
cd xxx
#初始化仓库
git init
#创建ignore,并编辑要忽略的文件
sudo vim .gitignore
#添加追踪文件
git add xxxx
#提交
git commit -m '初始版本'

2) 导出裸仓库
需要把现有仓库导出为裸仓库——即一个不包含当前工作目录的仓库

git clone --bare ./ xxx.git

将本地项目 ./ 中的.git 导出为 xxx.git

  1. 把裸仓库放到服务器上
    由于局域网内可以互相ssh,就把本机当作服务器,把xxx.git存放到git专用目录下
    /srv/git/xxx.git

sudo mkdir /srv/git
sudo mv -if xxx.git /srv/git

这样远程仓库就有了,原来的项目可以废掉了。

4)从远程仓库下载到本地

git clone xxx@localhost:/srv/git/xxx.git

就哦了

ps: 作为python 项目 , pycharm直接有对git的可视化支持,好用的不要不要的。

3 远程仓库更新

push 提交到远程仓库
pull 拉取远程仓库并合并
fetch 拉取远程仓库
reset 将本地仓库回滚到某次提交 ,–hard将删除该次提交后面的所有提交
revert 还原某次提交,(如果一不小心将错误提交到远程仓库,通过该手段,先将本地仓库revert,然后再次push即可)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值