• gitee 远程仓库


    【四】gitee 远程仓库

    (1)HTTPS链接仓库

    • 首先创建仓库

    image-20240514183720490

    • 根据提示信息创建链接即可

    image-20240514184822200

    • 第一次提交会提示你输入用户名和密码

    image-20240514184615287

    • 其中凭据保存在了本地的windows的凭据中,如果删除,下次上传还需要输入gitee的用户名和密码

    image-20240514185130163

    (2)SSH链接仓库

    • 什么是公钥和私钥

      • 公钥:公钥是一种用于传输数据的密码学工具,主要用于数据的加密。使用公钥加密算法时,数据的发送者通过公钥将自己发送的数据进行加密,只有拥有对应私钥的接收者才能对数据进行解密。即使数据被第三方截获,由于只有私钥可以解密,第三方也无法破解数据,从而保证了数据的安全性。
      • 私钥:私钥是与公钥相对应的,用于解密公钥加密的数据。私钥必须妥善保管,不能泄露给任何人,否则可能导致数据被非法访问或篡改。
    • 说明

      • Gitee的公钥和私钥是一种非对称加密技术,通过公钥加密和私钥解密的方式保障数据传输的安全性。开发者需要妥善保管自己的私钥,并在Gitee上配置好公钥以便安全地访问仓库。
    • 官方SSH 公钥设置 | Gitee 产品文档

    • 配置步骤

      1. 生成公钥和私钥
        • 在本地仓库中执行ssh-keygen -t ed25519 -C "Gitee SSH Key"
          • -C 参数用于指定一个新的注释(comment)字符串,这个字符串通常用于在密钥列表中帮助识别密钥的用途
        • 一直回车即可,将在用户的根目录下创建一个.ssh的文件夹
          • 其中id_ed25519.pub是公钥
          • 其中id_ed25519是私钥,里面的内容不要泄露
        • image-20240514190907641
      2. gitee配置公钥
        • 复制id_ed25519.pub文件的内容到gitee中
        • image-20240514191654372
      3. 通过测试
        • 在本地仓库中执行以下命令测试
          • ssh -T git@gitee.com
        • 输入yes后,会在用户根目录下的.ssh文件中生成known_hosts,不用管,这就测试通过了
        • image-20240514192349589

    (3)远程仓库命令

    下面是一个表格,概述了Git中与远程仓库相关的常用命令及其说明:

    命令说明
    git remote列出已配置的远程仓库名
    git remote -v列出已配置的远程仓库名和对应的URL(详细模式)
    git remote -h显示git remote命令的帮助文档
    git remote remove <源名>删除指定的远程仓库
    git remote add <源名> <源地址>添加新的远程仓库
    git remote set-url <源名> <新源地址>修改远程仓库的URL
    git push <源名> <分支名>将本地分支的更改推送到远程仓库的指定分支
    git clone <远程源地址>克隆远程仓库到本地
    git pull <源名> <分支名>从远程仓库的指定分支拉取更改并合并到当前本地分支
    git fetch <源名>从远程仓库拉取最新的更改,但不合并到当前分支
    git branch -r列出远程仓库的所有分支
    git branch -a列出所有本地和远程分支
    git remote show <源名>显示指定远程仓库的详细信息
    git remote rename <旧源名> <新源名>重命名远程仓库的引用名

    【五】协同开发常见问题

    (1)远程仓库创建分支本地拉去看不到

    • 首先远程创建一个dev分支

    image-20240514194240373

    • 本地拉取远程仓库的所有信息
      1. 拉取:git pull origin
        • 虽然会有提示[new branch] dev -> origin/dev
      2. 但是通过命令是查看不到dev分支的:git branch
      3. 其实可以直接切换到dev分支:git switch dev
      4. 再次查看分支信息就可以发现dev分支存在了:git branch

    image-20240514194943901

    (2)多分支合并出冲突

    1. 首先创建多分支,在远程仓库master分支下创建devbug分支
      • image-20240514201732907
    2. 远程仓库克隆到本地,切换到dev分支修改任意文件(2.txt),添加一点内容到文件中,然后合并到主分支。
    3. 切换到bug分支也对相同的文件(2.txt)进行修改,添加一点信息,然后提交
      • image-20240514204557711
    4. 此时合并bug分支将报错,并提示相关信息
      • image-20240514205416359
    5. 此时查看工作去状态,会发现同时修改的文件生发生了变化,需要你自行决定更改保留信息
      • image-20240514205854474
    6. 最后提交修改信息即可
      • image-20240514210102813

    (3)多人操作统一分支报错

    • 这里模拟多人的方式是,本地算是一个人,线上直接修改算是一个人
    1. 首先要保证的是初始状态上线上和本地是一直的(即本地先pull一下)

      • image-20240514211756377
    2. 然后是线上(即gitee上)在master分支上,修改任意文件(4.txt)

      • image-20240514213046305
    3. 本地同样的在master分支上进行同样的文件(4.txt)修改,然后提交到远程,会报错提示

      • image-20240514213539255
    4. 根据提示,自行决定保留,然后提交即可

      • image-20240514213956482

    【六】pycharm中使用git

    (1)git关联开启和关闭

    • 开启

      1. 首先在settings中搜索git,进行测试和应用
        • image-20240514223804634
      2. 然后pycharm的头部信息中选择VCS,然后选择当前项目跟文件即可
        • image-20240514224030718
    • 关闭

      • 在settings中搜索Directory Mappings,然后将VCS调整成None即可
      • image-20240514224314755

    (2)其他操作

    • 上传-提交-下拉

      • image-20240514230240559
    • remotes管理

      • 在pycharm的顶部选择git,然后选择Manage Remotes
      • image-20240514224628751
    • 分支管理

      • 在pycharm的右下角选择master
      • image-20240514225915605
    • 好用的方法

      • image-20240514231011824

    【七】为开源项目贡献代码

    (1)简单说明

    1. 找到并了解开源项目
      • 首先需要在GitHub、GitLab或其他代码托管平台上找到感兴趣的开源项目。
      • 阅读该项目的文档,了解其用途、结构、以及它是如何解决某个特定问题的。
    2. Fork项目
      • 在找到并了解了项目后,点击项目页面右上角的“Fork”按钮。这将创建一个该项目的副本,并将其添加到自己的个人仓库中。
    3. Clone项目到本地
      • 在您的本地计算机上,使用Git命令将fork的项目克隆到本地。
    4. 创建分支
      • 在本地仓库中,创建一个新的分支来开发更改,因为它允许在不干扰主分支的情况下进行更改。
    5. 修改代码
      • 当完成修改后,请确保代码能够正常运行,并且没有引入新的错误。
    6. 提交更改并推送到仓库
    7. 提交Pull Request(PR)
      • 找到刚刚推送的分支,点击“New pull request”按钮,选择刚刚推送的分支作为源分支,以及主项目的主分支(通常是mainmaster)作为目标分支。
      • 填写Pull Request的描述,解释所做的更改以及为什么这些更改对项目有益,提交Pull Request。
    8. 等待审核和合并
      • 项目的维护者将收到你的Pull Request,并对其进行审核。
      • 如果他们同意更改,他们可能会将的Pull Request合并到主项目中。
      • 如果他们有任何疑问或建议,他们可能会在Pull Request的评论中与联系。
  • 相关阅读:
    利用Unity和OpenXR实现眼动追踪的基础指南
    c++语言基础:常量指针和指针常量的区别
    Django 表单
    TiDB 7.1.0 LTS 特性解读丨关于资源管控 (Resource Control) 应该知道的 6 件事
    揭秘计算机奇迹:探索I/O设备的神秘世界!
    RabbitMQ Client (C/C++)
    球迷 如何在Linux纯命令行玩转谷歌浏览器,边看欧洲杯,边看足球宝贝
    工厂模式 与 抽象工厂模式 的区别
    redisson看门狗机制,redisson看门狗性能问题,redisson源码解析
    [SpringMVC笔记] SpringMVC-14-SSM整合-异常处理器
  • 原文地址:https://blog.csdn.net/weixin_48183870/article/details/139024771