首页 > 其他分享 >小白也能学会的git教程.THREE(远端仓库)

小白也能学会的git教程.THREE(远端仓库)

时间:2022-11-23 21:11:22浏览次数:64  
标签:教程 git 仓库 代码 THREE SSH 本地 远程

小白也能学会的git教程一:https://www.cnblogs.com/Ayako/p/16905560.html

小白也能学会的git教程二:https://www.cnblogs.com/Ayako/p/16906085.html

在了解了如何创建git项目和一些简单的命令之后,接下来我们来了解一下远程仓库

1.了解远程仓库

什么是远程仓库

远端(远程)仓库其实就是远程的git服务器,帮我们存储代码的服务器。

  • 本地git存储:一旦你电脑丢了或者硬盘损坏,直接扑街

  • 远程git存储:如果你电脑坏了换了一个新的,只需要从网上重新下载即可

常见的远程仓库有哪些?

(1)github:免费。国外服务器,国内访问不稳定 。

(2)码云(gitee):免费。国内服务器。

(3)gitlab:开源

(4)私人服务器:个人或者公司的服务器

远程仓库的作用

实现团队协作开发

远程仓库的使用流程

leader(仓库的创建者,有最高的权限)

登录远程仓库,建立空项目;

给成员添加权限

成员

  1. 登录远程仓库
  2. 把代码拉到本地
  3. 本地编辑,保存,提交代码
  4. 同步到远程

2.远程仓库使用实例(以码云gitee为例)

在使用码云之前,我们需要先去我的git中配置用户文件:

git config --global user.email "你的码云设置的邮箱"

git config --global user.name "你的码云用户名"

① 建立仓库

​ 登陆码云官网,在右上角点击头像旁的加号,创建仓库

② 将远程仓库克隆到本地

git clone +仓库地址

仓库地址有多种格式,这里我们用https的

git clone:克隆,将整个远程仓库克隆到本地

  • 这个命名相当于拉取所有的代码(将整个远程仓库文件夹copy到你的本地)
  • 这个命令一般只会在项目开始的时候执行一次

它会在本地创建一个git仓库

③ 本地编写代码

​ 在本地我们通过git addgit commit -m ''来把本地仓库里做的操作添加到暂存区

此时我们创建了一个demo.txt文件,添加了一行文字,并且将其添加到了暂存区

④ 将本地代码推送到远程

git push

此时我们已经将本地仓库推送到远程仓库。那如果我们有同事在我们下班时修改了代码并上传,我们上班时,如果需要接着同事修改后的文件进行操作,克隆远程代码显然是不明智的操作,应该怎么做呢?

⑤ 将远程代码拉取到本地

git pull

通过gitee的新增和编辑,我们模拟了一些操作,接下来让我们通过git pull拉取远程代码到本地

  • 这个命令不会拉取所有代码,只是拉取远程上面新增的代码(把别人写的代码合并到你的本地)

  • 这个命令,在多人开发的时候建议每天上班前执行一次

⑥ git pull 合并冲突

合并:把两个版本的代码合在一起。

冲突:合并失败。

例如:

  1. A同事改了 同事新增.txt的第一行,提交到了远程;

  2. B同事本地仓库也改了 同事新增.txt的第一行,并commit

  3. B同事git pull(从远程拉下来) 出现错误:两个人改了同一地方。

处理:

  1. 手动解决问题。看看使用什么代码 (在文件里删除)
  2. add commit
  3. git pull 再次拉取
  4. git push 上传至远程仓库

⑦ 远程仓库多人开发流程

⑧ 将本地仓库上传至远程

​ 在实际开发中,也存在将本地已经创建好的仓库上传至远程仓库,或者是想要备份项目的情况

1.初始化本地仓库

​ 通过git init初始化一个本地git仓库

2.创建一个空远程仓库

3.将本地仓库上传至远程

​ 在本地仓库文件夹打开Git Bash,按照gitee的提示进行操作

​ 因为我们在本地仓库文件夹打开的Git Bash,不需要输入第一行,复制第二行后回车对第三行使用同样操作 即可

​ 上传成功后即可在远程仓库看到本地仓库了

3.远程仓库SSH配置

两种访问方式

远程仓库有两种访问方式,分别是HTTPSSSH

  • HTTPS:零配置;但是每次访问仓库时,需要重复输入的账号和密码才能访问成功(现在不需要了)

  • SSH:需要进行额外的配置;但是配置成功后,每次访问仓库时,不需重复输入账号和密码。公司中也实际开发推荐使用SSH方式访问远程仓库

SSH 介绍

加密通讯协议

SSH key 的作用:实现本地仓库和 Github 之间免登录的加密数据传输。

SSH key 的好处:免登录身份认证、数据加密传输。

SSH key 由两部分组成,分别是:

  • id_rsa(私钥文件,存放于客户端的电脑中即可)

  • id_rsa.pub(公钥文件,需要配置到远端服务器 中)

SSH配置流程

  1. 打开 Git Bash

  2. 输入命令:ssh-keygen -t rsa -C '邮箱'

    1. 这里的邮箱要与 全局配置 (git config --global user.email) 以及 码云上的登记邮箱一致

      1. 连续敲击 3 次回车,即可在 C:\Users\用户名文件夹.ssh 目录中生成 id_rsa 和 id_rsa.pub 两个文件

      此处由于我已经操作过,暂不做演示

  3. 输入命令:cd ~/.ssh进入.ssh目录

  4. 输入命令:ls 发现 id_rsa 和 id_rsa.pub 两个文件已创建成功

  5. 输入命令:cat id_rsa.pub 复制输出的内容

  6. 将复制的公钥复制到giett设置的ssh公钥里(标题会自动填写)

工作过程

远程仓库就写到这里,下次将聊聊分支~

标签:教程,git,仓库,代码,THREE,SSH,本地,远程
From: https://www.cnblogs.com/Ayako/p/16919807.html

相关文章

  • git 操作(自用)
    git操作gitinitgitremoteaddoriginhttps://#.gitgitpulloriginfillcourse--allow-unrelated-historiesgitadd-Agitcommit-m"init"gitbr......
  • Jenkins git访问拒绝
    Jenkinsgit访问拒绝Mikasa___关注2018.07.3114:36:31字数196阅读4,649问题一Failedtoconnecttorepository:Command"[email protected]:......
  • 使用git克隆代码与上传代码
    一、安装git登陆git官网:https://git-scm.com/window国内镜像下载:https://registry.npmmirror.com/binary.html?path=git-for-windows/二、下载gitinitgitclone+地址......
  • 6、Mac下使用brew安装Git时报错Error: Command failed with exit 128: git
    现象:Mac下homebrew安装成功,参照Git官网的指导使用brewinstallgit命令来安装Git,一直报错:Error:Commandfailedwithexit128:git 具体操作: 解决方案:执行如下命......
  • 常用js库和框架(three.js)
        three.js是web上面经常使用到的一个3d库。它在web领域里面的流行程度,有点类似于linux里面的opengl,windows里面的d3d。初学3d库,大家不要有什么畏难情绪,只要一步......
  • 项目文件git
    一、在码云上新建一个仓库二、在pycharm打开项目,在项目目录下新建一个.gitignore文件三、在项目下打开终端(git已安装)1.初始化要git的文件初始化把项目目录下的文件都......
  • 3.2 Docker最新入门教程-Docker入门-将应用程序容器化
    3.2将应用程序容器化对于本指南的其余部分,您将使用一个在Node.js中运行的简单待办事项列表管理器。如果您不熟悉Node.js,请不要担心。本指南不需要JavaScript经验。......
  • 3.1 Docker最新入门教程-Docker入门-概述
    3.1概述欢迎!我们很高兴您想学习Docker。本指南包含有关如何开始使用Docker的分步说明。您将在本指南中学到和做的一些事情是:构建并运行镜像作为容器使用DockerHub共......
  • 【入门教程】tmux精简教程
    Tmux是一个linux下的服务端会话管理工具,可以持久化服务端的session,非常适合用命令行管理服务器的情况。【安装】Ubuntu或Debian$sudoapt-getinstalltmuxCentOS......
  • ASP.NET Core教程-Logging(日志)
    更新记录转载请注明出处:2022年11月23日发布。2022年11月20日从笔记迁移到博客。日志(Logging)基础日志说明日志并不会为应用程序增加实质性的功能,常用于记录错误信......