远程仓库
我们的代码不能总是放在本地,因为总是放在本地,一旦电脑出现故障,数据将丢失,怎么共享呢?这里我们需要一个服务器,我们可以把代码放到服务器上,然后让别人下载,这样我们既可以备份代码,也可以进行团队协作开发。
局域网仓库
实际上我们可以搭建一个单间的局域网服务器共享我们的代码
本地相对路径,多个文件夹之间共享代码
开启局域网共享代码
局域网这种共享是没有安全控制的,都可以访问,如果想要搭建一个可以控制权限的服务器需要借助第三方软件。
gitblit,可以自行搜索搭建。
常用远程仓库托管服务
除了自己搭建服务器,其实我们可以使用一些免费的远程仓库,远程仓库有很多,常见的免费互联网远程仓库托管服务如下:
网址:
- www.github.com
- www.gitee.com
- www.gitlab.com
- github是一个基于git实现在线代码托管的仓库,向互联网开放,企业版要收钱。
- gitee即码云,是 oschina 免费给企业用的,不用自己搭建环境。
- gitlab类似 github,一般用于在企业内搭建git私服,要自己搭环境。
GitHub(gitee)、GitLab 不同点:
1、GitHub如果使用私有仓库是需要付费的,(2019年开始私有仓库也是免费的但是只能3个人协同开发,想要更多需要收费),GitLab可以在上面搭建私人的免费仓库。
2、GitLab让开发团队对他们的代码仓库拥有更多的控制,相对于GitHub,它有不少的特色:
- 允许免费设置仓库权限
- 允许用户选择分享一个project的部分代码
- 允许用户设置project的获取权限,进一步提升安全性
- 可以设置获取到团队整体的改进进度
- 通过innersourcing让不在权限范围内的人访问不到该资源
这里我们使用gitee(码云) 来讲解,其他可自行找资料学习非常类似。
码云账号注册
填写邮箱发送验证码,然后可以注册账号,主页如下
创建远程仓库
各个类型仓库之间的区别:
把本地代码推送到远端
此时我们刷新仓库发现代码已经存在了。
我们填写的用户信息,会被保存在本地,下次提交无需填写用户名和密码。
从远程仓库克隆代码
我们同样可以从库下载代码。
新建一个文件夹 repo2 ,进入然后进行如下操作。
此时我们发现我们的代码已经被下载下来了。
代码的修改与提交,查看历史
- 此时我们修改代码就不能仅仅是提交到本地了,提交完毕应该推送到远端服务器。
- 此时如果别人从远端仓库下载最新的代码其实是可以看到我们的代码修改记录的。
git -->显示日志
ssh 连接概述
实际上git 不仅仅支持用户名密码方式的配置,可以有另外一种相对更加安全的配置即ssh 方式配置。
ssh 方式的底层原理
ssh连接地城是RSA算法原理,又称非对称加密,是一种现在公认的最安全的加密方式。
数学基础好的同学可以研究一下。
公钥私钥加密可以看作古代的"虎符" ,我们本地电脑有一份,远程服务器有一份,只要 "虎符" 核对通过表示身份无误,可以执行提交等操作,无需输入用户名密码。
ssh 密钥的生成
生成公钥私钥
ssh-keygen -t rsa 一直回车即可
会默认用户目录 .ssh 目录生成一个默认的id_rsa文件 和id_rsa.pub
ssh 密钥配置
ssh 方式克隆/提交代码:
配置完成之后我们克隆我们之前的项目
修改后直接提交推送即可成功,git 会自动去.ssh 目录找我们的私钥进行匹配。
远程仓库的其他操作
概念
当我们从 gitee 上查看别人的项目的时候我们可能会看到上图中的按钮。
指数:是gitee 网站根据当前项目的各项指标计算出来的一个值。
Star:点赞, 注意这里的并不像朋友圈那样容易获得点赞,圈内人还是很克制的。
Watch:如果你watch 了某个开源项目,那么这个项目后续所有的改动你将收到通知。
Fork :
将别人的代码克隆到你自己的仓库
作用一: 如果担心某个优秀的项目别人突然有一天不开源了,你可以fork到自己的仓库
作用二: 修改别人的代码
以linux 为例,你其实不是linux 社区的开发人员,但是你又想为linux 开发做贡献(维护代码)。
你并没有权限,怎们办?
你可以先把linux 开源的代码 fork 到你自己的仓库,此时你就可以操作自己的仓库进行修改代码了。
如何让别人合并你修改好的代码呢?
我们注意项目的上方有一个 " Pull Request" 这个按钮的意思是 "请求求别人合并你修改的代码"。
当我们发起一个 Pull Request 时,项目的拥有者将收到 Pull Request请求,然后将根据你提交代码的质量决定是否合并。
项目操作
- 我们可以删除修改我们自己仓库的基本信息。
- 我们可以邀请其他人成为项目的开发人员或者管理人员。
我们可以删除修改我们自己仓库的基本信息
利用 gitee 搭建个人主页
1)将静态资源上传至仓库。
2) 选择服务 pages 即可部署。
注意:
- 必须有个index.html 文件
- 只能搭建静态网站,动态网站请租赁服务器搭建提供服务
- gitee 要求必须绑定手机号
点击开启后gitee 会自动生成一个域名
直接访问即可
此时我们已经在git 上部署了一个静态的网站