Git Bash 上传本地文件到Gitee(AI助力解决问题)

#[端午特别征文]探索技术极致,未来因你出“粽”#

前言

消失了将近一个月,预祝大家端午节快乐! 这篇文章主要介绍下在上传本地项目到gitee时出现的问题,以及借助AI解决问题。

在这里插入图片描述

Gitee是一个基于 Git 的代码托管和开发协作平台,它提供了代码仓库、代码审查、持续集成/持续部署 (CI/CD)、项目管理、问题跟踪等功能。用户可以在 Gitee 上创建自己的代码仓库,上传代码并与团队成员协作开发。

==Git Bash ==是一个基于 Git 的命令行工具,它允许用户在 Windows 操作系统上使用 Git 命令行工具进行版本控制和开发工作。Git Bash 提供了一些常用的 Git 命令和 shell 脚本,例如 git clone、git push、git pull、git status、git log 等。

总之,Gitee 是一个功能强大的代码托管和协作平台,而 Git Bash 则是一个方便易用的 Git 命令行工具,它们都可以帮助开发者更高效地管理和协作开发代码。(PS:文章前言由Chatgpt所写)

遇到问题——解决问题

今天使用Git Bash上传自己所写的一些项目时,发现了一些在平常使用时会遇到的问题,结合搜索引擎和Chatgpt,最终解决了问题。以下是遇到问题使用的相关方法总结。

需要了解

在查看问题之前,我们需要了解一些基本知识:

1:什么是SSH

SSH密钥是一种用于身份验证的加密密码,它允许用户通过公钥和私钥对进行安全通信。

在SSH中,每个用户都有一对公钥和私钥。公钥可以与其他人共享,以便他们可以通过该公钥来访问您的计算机或服务器。私钥则只能由您自己持有,并且必须保密。当您使用SSH连接到另一台计算机或服务器时,您需要使用该计算机或服务器上的公钥来进行身份验证。

使用SSH密钥进行身份验证的主要优点是它们比传统的密码更安全。此外,SSH密钥还提供了更高的安全性,因为它们需要进行数字签名才能验证其有效性。

总之,SSH密钥是一种非常安全的身份验证方法,它可以帮助保护您的计算机或服务器免受未经授权的访问。

2:什么是id_sra.pub

**`id_rsa.pub` 和 `id_sra.pub` 都是 OpenSSH 公钥文件的一部分,它们分别用于在 SSH 连接和 SFTP 上传/下载中进行身份验证。**

具体来说,id_rsa.pub 是您的私钥的公钥,而 id_sra.pub 是您的 SSH 密钥关联的 SRA(Security Requirements Agent)的公钥。
SSH 密钥和 SRA 通常一起使用,以便在远程计算机上执行命令或上传文件时进行身份验证。当您使用 SSH 连接到远程计算机时,您需要提供您的私钥以进行身份验证。同样地,当您使用 SFTP 上传文件时,您需要提供您的 SSH 密钥和 SRA公钥以进行身份验证。

因此,如果您在使用 SSH 或 SFTP 时遇到了问题,可能需要检查您的 id_rsa.pub 和 id_sra.pub文件是否已正确配置并已添加到您的 SSH 客户端或 SFTP 客户端中。

ok,下面来看看都是哪些问题吧

SSH密钥问题

之前在使用Git Bash上传文件时,一直使用的是 HTTPS 来连接 Git Bash和Gitee仓库,今天使用SSH时发现出现以下提示:

在这里插入图片描述
然后查找资料,问题描述如下:

这个提示是因为 Gitee 无法验证您所提供的主机密钥。这可能是由于您第一次访问 Gitee 或您的 SSH 密钥未添加到 Gitee 中。

看到这个描述,第一个想到的肯定是我没有将我的SSH密钥添加到Gitee中,那么接下来就是解决“如何将我的SSH密钥添加到Gitee中”

首先,在Gitee官网的侧边栏中就有“密钥管理”:

在这里插入图片描述
在这里插入图片描述

注意到官方也给出了 “如何生成公钥”的提示,不妨点开看看:
明白了官方的意思,肯定需要自己上手尝试一番(页面的左边栏有很多常见问题的解决手册,建议在使用无论哪个平台去完成任务时,都记得去看看官方文档,很有收获!)

这里提一句,在没有将SSH密钥添加到Gitee中去尝试查看用户密钥,也就是 id_rsa.pub 文件时会返回“找不到”错误,如下:

在这里插入图片描述
看到这里,还是老老实实的添加密钥吧。

首先,在Git Bash命令行输入:

$ ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com"   //通过ed25519方式加密

注意:这里的 xxxxx@xxxxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。
现网的大部分教程均讲解的使用邮箱生成,其一开始的初衷仅仅是为了便于辨识所以使用了邮箱。

然后回车出现:

在这里插入图片描述
又报错了,报错信息仍然是 XXX:command not found,

仔细想一想,如果是和Git密钥相关的话,是不是需要进入bin文件夹下呢,但是我在输入该命令时的文件路径却是在我想提交的项目文件夹里,那肯定不对呀,因此当前的任务就是找到Git 的bin文件夹。

转到Git的安装路径,找到bin,然后在 E:\Git\bin 路径下进行命令输入 :

$ ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com"

在这里插入图片描述

OK,这样你就完成了密钥的生成了,还看到了你的密钥长啥样。

并且你会看到生成的存放密钥的文件,也就是我们之前提到的id_rsa.pub文件的路径在哪。

在这里插入图片描述

如果感兴趣的话,可以照着提示路径看一眼:

在这里插入图片描述
然后,我们需要查看密钥,输入:

$ cat ~/.ssh/id_rsa.pub

在这里插入图片描述

最后,我们只需要将生成的密钥复制下来,然后粘贴到Gitee的SSH密钥管理处,进行密钥的添加复制粘贴时注意,一定要确保密钥的完整性和准确性,不要有空格!
在这里插入图片描述

到此为止,SSH的密钥就添加完成啦,看一下是否可以正常连接:

$ git remote add origin ssh地址

在这里插入图片描述

乍一看没有出现之前的报错,实际上密钥问题已经解决了,只是又来了一个新错误,不过问题不大,接着看。

误上传一个不包含.git的文件

出现上面的问题是因为我需要上传的文件路径写错啦,仔细看我正在进行上传的文件路径是怎样的?

在这里插入图片描述
我需要上传的路径需要包含.git,但是显然newpub里面并不包含,而.git文件在new-pub文件中:

在这里插入图片描述

而我需要上传的文件都在new-pub里面,把路径改回来即可

$ cd new-pub

然后将代码上传至远程分支

git push -u origin "master"

在这里插入图片描述

现在来看一下Gitee这边有没有显示我上传的文件:

在这里插入图片描述
OK,上传完毕。

如何更新仓库中的项目文件

当我需要新上传一些项目文件去原有仓库时应该如何做:

Git Bash中输入以下代码:

git pull origin master    //用于从远程 Git 仓库中获取(pull)最新的代码更新并合并(merge)到本地分支 master

在这里插入图片描述

接着:

git add .  //会将当前工作区中当前目录(包括子目录)下的所有新文件和对已有文件的改动提交至暂存区,但不包括被删除的文件。
git commit -m "需要上传的新的项目文件名"    //将暂存区里的改动提交到本地的版本库

在这里插入图片描述

上传完毕就可以在Gitee上查看更新后的仓库啦。

接着上面的问题,我又再new-pub中新增了一个文件夹,然后尝试着用

git commit -m "file_name"

进行提交,发现出现了一个提示:

在这里插入图片描述

这个输出表示当前的分支(master)比远程仓库的 master 分支领先一个提交(commit)。这通常发生在本地进行了一些更改,但还没有将这些更改推送到远程仓库。

如果想要将本地更改推送到远程仓库,运行以下命令:

git push origin master

这将会将本地 master 分支推送到远程仓库的 master 分支。需要先将本地分支切换到 master 分支才能执行此命令。如果已经切换到了 master 分支,则可以直接运行该命令。

运行结果如下:
在这里插入图片描述
此时新增项目文件夹上传完毕。

总结

问题解决总结:

  1. Gitee 是一个基于 Git 的代码托管和开发协作平台,它提供了代码仓库、代码审查、持续集成/持续部署 (CI/CD)、项目管理、问题跟踪等功能。

  2. Git Bash 是一个基于 Git 的命令行工具,它允许用户在 Windows 操作系统上使用 Git 命令行工具进行版本控制和开发工作。

  3. 在执行 Git 命令时出现 “fatal: not a git repository (or any of the parent directories): .git” 错误通常表示您正在尝试在不是一个 Git 仓库的目录上执行 Git 命令。

您可能没有在正确的目录中执行 Git 命令。请确保您正在正确的 Git 仓库目录中执行 Git 命令。如果您正在子目录中,请切换到父目录并再次运行 Git 命令。
您可能没有初始化 Git 仓库。在某些情况下,您需要先使用 git init 命令初始化一个 Git 仓库。例如,如果您想将当前目录转换为 Git 仓库,请运行以下命令:
然后,您可以继续使用 Git 命令。
您可能已经删除了本地 Git 仓库。如果您已经删除了本地 Git 仓库,则无法在当前目录中找到它。请确保您已经在正确的目录中执行 Git 命令,并且已经初始化了一个 Git 仓库。
您可能没有添加文件到 Git 仓库中。如果您还没有将文件添加到 Git 仓库中,则无法执行任何版本控制操作。请使用 git add 命令将文件添加到 Git 仓库中,然后使用 git commit 命令提交更改。
如果以上解决方法都无法解决您的问题,请检查您的操作系统设置和权限,以确保您有足够的访问权限来执行 Git 命令。

  1. 如果当前目录不是一个 Git 仓库,请运行以下命令进行检查: git status。用于显示工作目录和暂存区的状态。

  2. 如果您需要将本地更改推送到远程仓库,请运行以下命令: git push origin master。请注意,您需要先将本地分支切换到 master 分支才能执行此命令。
    (ps:Chatgpt所写总结)

我们可以看到,掌握好科技时代的机遇,让AI成为我们的助手,做事效率会大大提高!但是要记住,打败你的永远都不会是AI,而是率先掌握AI的人!

星光不负赶路人,加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/15770.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年上半年部分团队的总结

把各个环节连起来 从我加入 CSDN 后不久,我就开始公开地总结我们的工作,我分管的团队留下了不少的总结和思考: 这是 2022 年下半年的汇报 这是 2022 年上半年的汇报 这是 2021 年年底的汇报 经过这些思考改进迭代的团队,是不是…

Chatgpt在程序员领域的革新:分析好处与挑战

#【端午特别征文】 探索技术极致,未来因你出“粽”# 前言: 总所周知,当前非常流行的Chatgpt对我们的生活冲击力巨大,那么,今天跟着小编一起来深入了解下这项技术给我们生活带来了哪些便利和困扰。 目录 前言 1、Chatg…

chatgpt赋能python:Python如何优化做题效率?

Python如何优化做题效率? 介绍 Python语言是当前互联网最热门的编程语言之一,全球甚至有将近百分之九十的公司都在使用它。它的简洁、易读以及强大的数据分析能力都得到了广泛的认可。但是,很少有人意识到Python也是一个很好的做题语言。在…

chatgpt赋能python:Python自动做题:实现高效自动化解决方案

Python自动做题:实现高效自动化解决方案 随着互联网的飞速发展,各种在线考试、测试平台层出不穷,然而,对于广大学生或考生们来说,做题并不是一件轻松的事情。不仅需要花费大量的时间和精力,还要耗费大量的…

产品再次跳票 法拉第未来的融资价值却渐渐浮现?

从“生态化反”到“极智科技顶奢”,贾跃亭讲故事的出众能力,总是能为旗下企业和产品赚足市场眼球。 但仅有宏大的前景描绘,似乎难以触动理性的资本市场,其创立的新能源车企法拉第未来(NASDAQ:FFIE&#xf…

2023年的互联网行业,有哪些机遇和挑战?

当手机发布会的周期越来越短,产品却大同小异,当消费电子的形态不再千奇百怪,人们开始节衣缩食...... 很多人可能会有疑问,人类科技停滞不前了吗? 答案是当然没有,也幸好没有。 只是在世界经济发展荣光不再…

王小川讽刺李彦宏活在平行宇宙,百度回击;字节盈利增八成,首超腾讯阿里;优酷回应非会员收看3000秒广告 | EA周报...

EA周报 2023年4月14日 每个星期1分钟,元宝带你喝一杯IT人的浓缩咖啡,了解天下事、掌握IT核心技术。 周报看点 1、优酷回应非会员收看3000秒广告:Bug已修复 2、王小川讽刺李彦宏活在平行宇宙,百度肖阳回击 3、字节跳动首度超越腾讯…

赖以威教授:在陶哲轩手中,GPT 就是他的常驻大脑发散模式

来源:遇见数学 [遇见数学]:本文作者赖以威教授,转自他脸书频道:www.facebook.com/iweilai0924。 作者简介:台师大电机系副教授,「数感实验室」共同创办人台大电机博士,文字与教育工作者 昨天聊到…

chatgpt赋能python:Python换行连接介绍

Python 换行连接介绍 如果你是一个Python初学者,你可能会想知道如何在程序中使用换行连接来使代码更加易读和易于理解。 换行连接是Python编程中一个很重要的概念,也是一个很简单的概念,但是许多初学者经常会犯错误。 在本文中,我…

chatgpt赋能python:Python如何自动换行

Python如何自动换行 在Python编程中,有时候我们需要输出很长的文本或字符串,这时候就需要自动换行的功能。本文将介绍Python中实现自动换行的几种方法。 方法一:使用字符拼接 在Python中,我们可以使用"“来拼接字符串。如…

chatgpt赋能python:Python自动换行设置详解

Python自动换行设置详解 Python是一款极为流行的编程语言,它的简单易用性、高效性和广泛应用等特点让其成为开发者喜爱的编程语言。在使用Python编写程序时,自动换行设置是一个非常实用的功能,可以帮助开发者更好地清晰展示代码结构&#xf…

chatgpt赋能python:Python换行输出:如何在Python中实现换行输出?

Python换行输出:如何在Python中实现换行输出? 在Python编程中,如何将输出内容分行呈现,是开发者经常会遇到的问题。Python提供了多种方式来实现换行输出,这篇文章将会介绍其中三种。 1. 使用转义字符 \n 在Python中…

chatgpt赋能python:Python怎么让输出结果换行

Python怎么让输出结果换行 如果你是Python程序员,你肯定会遇到需要在程序中输出一些结果的情况。在大多数情况下,你可能想把输出结果按行分隔。 为什么需要换行输出 通常情况下,一个Python程序要输出多行结果,如果不进行换行&a…

chatgpt赋能python:Python如何将空格变成换行

Python如何将空格变成换行 Python是一种流行的编程语言,有着许多实用的功能和库。在这篇文章中,我们将介绍如何使用Python将空格变成换行的方法。这是一种有用的技巧,可以帮助你在处理文本时更加方便。 为什么需要将空格变成换行 将空格变…

chatgpt赋能Python-pythonprint自动换行

Python Print 自动换行 Python是一种广泛使用的高级编程语言,因为它是一种解释型语言,可以轻松地编写脚本和快速原型设计。在Python编程中,我们通常使用print函数来输出和调试程序。当我们输出较长的文本时,可能会遇到自动换行问…

chatgpt赋能Python-python3怎么换行

Python3中的换行是许多初学者和经验丰富的工程师们都需要掌握的关键概念之一。在本文中,我们将探讨Python3中如何使用换行,包括介绍和结论。 什么是Python3中的换行? 在Python3中,换行是指将一行代码分成多个部分,以…

chatgpt赋能Python-python3_7怎么换行

Python 3.7 的换行方法详解 Python 是一种广泛应用的高级编程语言,它具有简单易学,功能强大,可移植性好等特点,深受全球开发者的喜爱。其中,每个程序员在编写代码时最常用的是打印输出函数,而其中换行更是…

chatgpt赋能Python-python3_9_7怎么换行

Python3.9.7是一款强大的编程语言,它具有许多优点,例如易于学习和使用,适用于不同的应用程序,以及具有丰富的第三方库支持。但是,许多人可能会面临一个问题:如何在Python3.9.7中正确换行? 在本…

uniapp文本支持换行,后端返回一串文本

怎么说呢。view标签是不支持的&#xff0c;因为接口返回的文本中函数 \n 换行的提示的 这样说我们得找一个支持换行的才行 text标签是支持 换行的。 所以 <text>这里放你的文本就行了</text>关注我 持续更新 前端知识

C# 发布 | 历史上的今天

整理 | 王启隆 透过「历史上的今天」&#xff0c;从过去看未来&#xff0c;从现在亦可以改变未来。 今天是 2023 年 7 月 7 日&#xff0c;在 1927 年的今天&#xff0c;互联网发展的早期创新者格伦卡勒&#xff08;Glen Culler&#xff09;出生&#xff1b;卡勒是 Culler-Frie…