zoukankan      html  css  js  c++  java
  • 348 git远程仓库:gitee(码云)与git,git clone,git push,git pull,git remote,SSH免密码登陆及配置

    gitee(码云)与git

    git与gitee没有直接的关系。

    • git是一个版本控制工具。
    • 码云 是一个代码托管平台,开源社区,是git的一个远程代码仓库。
    //1. gitee是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub。
    //2. gitee免费,代码所有人都能看到,但是只有你自己能修改。
    

    gitee官网

    开源中国-git


    同事1的操作


    同事2的操作

    远程仓库和本地仓库不一样,push的时候,会有问题,会影响远程仓库的代码,所以要先pull,跟本地合并,保证两者的代码是一样的,再合并


    git clone

    • 作用:克隆远程仓库的代码到本地

    • git clone [远程仓库地址]

    • git clone git://gitee.com/jepsongithub/test.git会在本地新建一个test文件夹,在test中包含了一个.git目录,用于保存所有的版本记录,同时test文件中还有最新的代码,你可以直接进行后续的开发和使用。

    • git克隆默认会使用远程仓库的项目名字,也可以自己指定。需要是使用以下命令:

      git clone [远程仓库地址] [本地项目名]


    git push

    • 作用:将本地仓库中代码提交到远程仓库

    • git push 仓库地址 master :将代码提交到远程仓库

    • 例子:git push git@gitee.com:jepsongithub/test.git master ,如果第一次使用,需要填写gitee的用户名和密码

    • 完整语法:

      git push <远程主机名> <本地分支名>:<远程分支名> 【<本地分支名>:<远程分支名> ---> 从哪里到哪里。】

    • 若远程是空仓库,推算是本地仓库不能为空


    git pull

    • 作用:将远程的代码下载到本地
    • 通常在push前,需要先pull一次
    • 获取远程仓库的更新,并且与本地的分支进行合并

    git clone:复制全部代码到本地

    git pull:从远程仓库更新 变化的部分 到本地

    将远程主机的某个分支的更新取回,并与本地指定的分支合并,完整格式可表示为:

    $ git pull <远程主机名> <远程分支名>:<本地分支名> 【和push相反,<远程分支名>:<本地分支名> ---> 从哪里到哪里。】
    

    git remote

    每次push操作都需要带上远程仓库的地址,非常的麻烦,我们可以给仓库地址设置一个别名。【后面的操作就可以用这个别名代替远程仓库的地址。】

    git clone 的仓库默认有一个origin的别名 。【用origin代替它对应的仓库地址即可。】

    # 给远程仓库设置一个别名
    git remote add 仓库别名 仓库地址
    举例:git remote add jepson git@github.com:jepsongithub/test.git
    
    # 删除jepson这个别名
    git remote remove jepson
    
    # git clone的仓库默认有一个origin的别名
    
    # 补充
    git remote:查看别名
    


    SSH免密码登陆

    git支持多种数据传输协议:

    • https协议:https://github.com/jepsongithub/test.git 需要输入用户名和密码
    • ssh协议:git@github.com:jepsongithub/test.git 可以配置免密码登录

    每次push或者pull代码,如果使用https协议,那么都需要输入用户名和密码进行身份的确认,非常麻烦。

    • gitee为了账户的安全,需要对每一次push请求都要验证用户的身份,只有合法的用户才可以push

    • 使用ssh协议,配置ssh免密码,可以做到免密码往github推送代码


    非对称加密

    非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。

    公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。

    因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。

    非对称加密算法实现机密信息交换的基本过程是:甲方 生成一对密钥,并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的 乙方 使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。


    SSH免密码登录配置

    注意:这些命令需要在bash中敲

      1. 创建SSH Key:ssh-keygen -t rsa
      1. 在文件路径 C:用户当前用户名 找到 .ssh 文件夹
      1. 文件夹中有两个文件:
      • 私钥:id_rsa
    • 公钥:id_rsa.pub

      1. 在 gitee -> 设置-> SSH 公钥页面中,新创建SSH key
      1. 粘贴 公钥 id_rsa.pub 内容到对应文本框中
      1. 在github中新建仓库或者使用现在仓库,拿到git@github.com:用户名/仓库名.git
      1. 此后,再次SSH方式与github“通信”,不用输入密码确认身份了

      ssh-keygen -t rsa 运行后 每台电脑都会生成自己的公钥和私钥


  • 相关阅读:
    SharePoint部署webpart时候,报错:部署步骤“回收 IIS 应用程序池”中出现错误: 无效命名空间 解决方案
    免费的分布式的自动化测试工具
    https://github.com/dotnetcore
    SharePoint2013与SharePoint2016语言切换原理以及如何使用代码进行语言切换
    微软开源最强Python自动化神器Playwright!不用写一行代码!
    B站播单按时间统计进度
    AF_INET与PF_INET的区别
    git显示:fatal: index file smaller than expected
    Unix系统中信号SIGKILL和SIGSTOP
    GTM、UTC和C/C++中的时间处理
  • 原文地址:https://www.cnblogs.com/jianjie/p/12407817.html
Copyright © 2011-2022 走看看