当前位置: 首页 > news >正文

ubuntu中上传项目至GitHub仓库教程

一、到github官网注册用户

1.注册用户

地址:https://github.com/

2.安装Git

打开终端,输入指令git,检查是否已安装Git

如果没有安装就输入指令

sudo apt-get install git

二、上传项目到github

1.创建项目仓库

进入github主页,点击+号,选择New repository,输入项目名字,创建新的仓库。

 

2.仓库初始化

主目录下新建 目录 github  然后  cd  进入

输入命令

git init

终端会显示类似下面的文字

3.添加仓库索引

添加本地仓库(当前文件夹)的所有文件,把项目文件拷贝进来

git add .
4.添加评论:

这里""可以自由填写上传备注,一般为项目版本号或修改备注等

git commit -m "first commit" 

这里按照提示输入命令即可:

 git config --global user.email "you@example.com"git config --global user.name "Your Name"

然后继续进行提交:

5. 清空当前远程oringin
git remote rm origin

6. 新建仓库名.git
git remote add origin https://github.com/你的用户名/你的项目名.git

7. 上传代码
git push -u origin master

 问题1:鉴权失败

你正在尝试使用用户名和密码进行 GitHub 身份验证,但由于 GitHub 于2021年8月13日停止支持密码身份验证,因此你需要使用其他身份验证方法。

解决方案:

生成个人访问令牌
推荐的替代方法是使用个人访问令牌(Personal Access Token,简称 PAT)进行身份验证。你可以在 GitHub 的设置页面中生成一个 PAT,并将其用作密码来进行身份验证。
生成 PAT 的步骤如下:

点击页面右上角的头像,然后点击 “Settings”。

输入一个描述,以便记住这个令牌是用来干什么的,并选择需要的权限。

  • 点击 “Generate token”。

复制生成的令牌并保存到安全的地方。

然后,使用生成的 PAT 替换密码来进行身份验证。输入用户名时,将 PAT 作为密码提供给 Git。这样应该可以成功进行身份验证并推送你的更改。

问题二:无法访问403

解决方案:

生成SSH 密钥对

从错误信息来看,GitHub 不再支持密码认证,这意味着你需要使用其他认证方式来推送代码。推荐的认证方式是使用 SSH 密钥对。需要完成以下步骤:

  • 生成SSH密钥对:如果您尚未生成SSH密钥对,则需要在本地计算机上生成它。您可以在终端中执行以下命令:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

在这里替换 your_email@example.com 为你在GitHub上注册的电子邮件地址。按照提示一直按回车键即可使用默认设置生成密钥对。

  • 添加SSH密钥到GitHub帐户:生成密钥对后,你需要将公钥添加到GitHub帐户中。你可以执行以下命令将公钥复制到剪贴板:
  • cat ~/.ssh/id_rsa.pub | pbcopy    # For macOS
    cat ~/.ssh/id_rsa.pub | clip      # For Windows
    cat ~/.ssh/id_rsa.pub             # For Linux

然后,将公钥粘贴到GitHub网站的设置中。转到 GitHub 主页 -> Settings -> SSH and GPG keys -> New SSH key,然后将公钥粘贴到相应的字段中。

 

  • 将存储库的远程URL从HTTPS切换到SSH:在你的本地存储库中,使用以下命令将远程URL从HTTPS切换到SSH:
 git remote set-url origin git@github.com:2018LSG888/ROS2.git

8.成功上传代码

参考资料:

Ubuntu项目上传Github_ubuntu上传github-CSDN博客

Ubuntu20.04上传项目至GitHub仓库_ubuntu上传github-CSDN博客

http://www.xdnf.cn/news/581779.html

相关文章:

  • 【数据结构与算法】LeetCode 每日三题
  • LeetCode 3356.零数组变换 II:二分查找 + I的差分数组
  • 精益数据分析(78/126):问题-解决方案画布的实战应用与黏性阶段关键总结
  • 华为云Flexus+DeepSeek征文 | 基于ModelArts Studio 的 DeepSeek API 实现行业深度搜索和分析
  • 平时使用电脑,如何去维护
  • VideoMAE论文笔记
  • 游戏引擎学习第305天:在平台层中使用内存 Arena 的方法与思路
  • 模拟退火算法求解01背包问题:从理论到实践的完整攻略
  • IPv4 地址嵌入 IPv6 的前缀转换方式详解
  • AUTOSAR AP 入门0:AUTOSAR_EXP_PlatformDesign.pdf
  • (高级)高级前端开发者指南:框架运用与综合实战
  • 《量子计算实战》PDF下载
  • 工业 / 农业 / AR 场景怎么选?Stereolabs ZED 双目3D相机型号对比与选型建议
  • 融合蛋白质语言模型和图像修复模型,麻省理工与哈佛联手提出PUPS ,实现单细胞级蛋白质定位
  • 边缘计算正在重新定义物联网的未来——你的设备还在“等云“吗?⚡
  • Java 大视界 -- Java 大数据机器学习模型在金融客户生命周期价值预测与营销策略制定中的应用(262)
  • java jdbc执行Oracle sql文件
  • 鸿蒙 HarmonyOS NEXT 系统 Preference 首选项使用全解析
  • Antd中Upload组件封装及使用:
  • 【Redis】三、在springboot中应用redis
  • python实现web请求与回复
  • 水库大坝、坝肩混凝土面板变形及岸坡位移多断面多测点安全监测新途径——变焦视觉位移监测仪
  • 在线时间戳(Unix TimeStamp)转换器
  • 739. 每日温度
  • 单片机如何快速实现查看实时数据
  • [Git] 基本操作及用户配置
  • CSR矩阵 矩阵压缩
  • 深入探究C++11的核心特性
  • [Harmony]网络请求
  • 【FAQ】HarmonyOS SDK 闭源开放能力 —Live View Kit (3)