Github仓库使用方式
主要参考:
「详细教程」使用git将本地项目上传至Github仓库(MacOS为例)_github上传代码到仓库-CSDN博客
新建文件夹参考:
GitHub使用指南——建立仓库、建立文件夹、上传图片详细教程-CSDN博客
一、新建一个 github 仓库(远程)
二、本地端
2.1 安装 git(Windows)
参考:
windows下Git的下载与安装以及Pycharm “Cannot Run Git”问题的解决方法_pycharm无法安装git-CSDN博客
2.2 创建本地仓库
(1)打开 Git Bash
(2)进入项目路径:
如:cd /e/!_AI_self_Proj/Gesture_Detection_Yolov5
(3)初始化本地仓库:git init
该命令执行后,本地项目的根目录下会出现一个名为 .git
的隐藏文件夹
三、本地端&Github端联合操作
3.1 配置 SSH 与 git config
(1)输入:
ssh-keygen -t rsa -C 邮箱@123.com
后面邮箱为注册Github时使用的邮箱。(注意⚠️:如果Github绑定了多个邮箱,这里填写主邮箱。)
(2)输入SSH key的生成路径
这里我输入:
/e/!_AI_self_Proj/Github_SSH_KEY/Gesture_Detection_Yolov5/.ssh/id_rsa_ges_yolov5
不修改就保存在系统提供的默认路径中,回车
然后输入密码,空的直接回车就是没有密码
(注意:要自己新建 .ssh 文件夹)
此时 .ssh 文件夹里会生成 .pub 文件,我这里就生成了 id_rsa_ges_yolov5.pub
这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,公钥可以放心地告诉任何人
至此,SSH key已经生成!
(3)mac 和 linux 可以继续执行
pbcopy < /e/\!_AI_self_Proj/Github_SSH_KEY/Gesture_Detection_Yolov5/.ssh/id_rsa_ges_yolov5.pub
(用‘\’转义‘!’)
将 SSH public key
复制到剪切板
下图所示界面表示操作成功。
windows 可以直接用文本打开 pub 文件复制内容
然后到 github 仓库,点击右上角头像 - settings
分别填写 Title
和 Key
字段,这里Title
字段我填充的是本地项目名称,Key
字段就是我们刚刚在 pub 文件复制的 SSH public key
. 之后点击 Add SSH key
完成添加操作
如果显示:
The authenticity of host 'github.com (20.205.243.166)' can't be established.
ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
这是少了一个known_hosts文件,本来密钥文件应该是三个,现在是两个,便报了这样的错误,此时选择 yes回车 之后,便可,同时生成了缺少了的known_hosts文件
而如果终端又返回 git@github.com: Permission denied (publickey). 字段,说明上述SSH key没有添加成功。解决方法:在终端执行命令
ssh-add /e/\!_AI_self_Proj/Github_SSH_KEY/Gesture_Detection_Yolov5/.ssh/id_rsa_ges_yolov5
记得换成自己的SSH key
所在路径。
此时若出现:
Could not open a connection to your authentication agent
意思就是说:没办法打开个连接到你的身份验证代理。
启动你的 ssh-agent 程序就可以:
ssh-agent $SHELL,这里会在当前shell中启动一个默认shell,ssh-agent程序会在子shell中运行,在有些linux系统中,默认shell通常为bash,上述命令通常可以直接写成 ssh-agent bash
然后再重新添加输入 ssh-add 的命令
成功显示
再输入:
ssh -T git@github.com
则显示:
说明添加成功
(4)配置 git config
依次输入:
git config --global user.name github_name
git config --global user.email github_email
其中,github_name 为 Github 账号对应的名称,github_email 为Github 账号中的主邮箱,即前述步骤中使用的邮箱。
3.2 上传代码
进入你项目的路径,即 .git
隐藏文件夹的上级目录
(1)执行命令 git add . ,将本地项目中的全部文件添加至 git 中,命令中 . 的含义就是“全部文件”。
如果出现:
warning: in the working copy of '.idea/inspectionProfiles/profiles_settings.xml', LF will be replaced by CRLF the next time Git touches it
参考:idea git报错 warning: LF will be replaced by CRLF in_idea git crlf lf-CSDN博客
解决的办法就是在 git bash 输入
git config --global core.autocrlf false (全局有效)
或者只需要当前该仓库内关闭自动转换则:
输入命令 :git config core.autocrlf false (仅对当前git仓库有效)
我这里采用仅对当前git仓库有效的方式
(2)执行命令 git commit -m "description" ,添加项目的描述文字,命令中 description 就是自定义的描述文字。
(3)执行命令 git remote add origin pj_ssh_path ,其中 pj_ssh_path 可通过下下图的方式进行复制粘贴,比如我这里的 pj_ssh_path 为 git@github.com:yourname/yourproj.git.
git remote add origin git@github.com:yourname/yourproj.git
如果报错:error: remote origin already exists.
输入:git remote rm origin
删除已存在的远程配置,在执行上面的 git remote add origin pj_ssh_path 命令
(4)在执行 git push -f origin master 将本地项目的文件上传至Github官网中
(注意区分命令git push -f origin master
与git push -f origin main
~)
可以修改库的默认Branch,和修改当前Branch的名称,在settings
没问题即可上传了
3.3 其他注意
注1:
因为上面上传太慢,推测应该是数据集的问题,数据集太大,后面尝试将数据集移开再重新上传
重新 git init
然后进行上传代码操作
确实是数据集太大的原因
注2:
如果要删除库里的文件夹,github只能整个删除仓库,所以要在本地操作,参考:
删除Github仓库中的指定的文件或文件夹_git怎么删除仓库里面的文件和文件夹-CSDN博客
直接新建一个文件夹,然后克隆:
git clone -b master git@github.com:yourname/yourproj.git # 替换为自己的仓库地址
git rm * -r --cached
git commit -m '全部删除' # 提交,添加操作说明
git push -u origin master # 将本次更改更新到github项目上去
即可删除仓库里面的内容。--cached 就是删除缓存区的文件,而保留本地的文件
git 批量删除文件夹和文件_git rm 批量删除-CSDN博客
删除github上的一个仓库或者仓库里面的某个文件_coding怎么删除仓库-CSDN博客
(可能还会遇到denied之类的问题,按上面解决方案来就行)
相关文章:

Github仓库使用方式
主要参考: 「详细教程」使用git将本地项目上传至Github仓库(MacOS为例)_github上传代码到仓库-CSDN博客 新建文件夹参考: GitHub使用指南——建立仓库、建立文件夹、上传图片详细教程-CSDN博客 一、新建一个 github 仓库&#…...

Harmony Ble蓝牙App(四)描述符
Harmony Ble蓝牙App(四)描述符 前言正文一、优化二、描述① 概念② 描述提供者③ 显示描述符 三、源码 前言 上一篇中了解了特性和属性,同时显示设备蓝牙服务下的特性和属性,本文中就需要来使用这些特性和属性来完成一些功能。 正…...

C# 实现单线程异步互斥锁
文章目录 前言一、异步互斥锁的作用是什么?示例一、创建和销毁 二、如何实现?1、标识(1)标识是否锁住(2)加锁(3)解锁 2、异步通知(1)创建对象(2&a…...

Java设计模式中策略模式可以解决许多if-else的代码结构吗? 是否能满足开闭原则?
Java设计模式中策略模式可以解决许多if-else的代码结构吗? 是否能满足开闭原则? 是的,策略模式可以帮助解决许多if-else的代码结构。通过将不同的算法封装成不同的策略类,然后在需要的时候动态地切换策略,可以避免使…...

[C#]C# winform部署yolov8目标检测的openvino模型
【官方框架地址】 https://github.com/ultralytics/ultralytics 【openvino介绍】 OpenVINO(Open Visual Inference & Neural Network Optimization)是由Intel推出的,用于加速深度学习模型推理的工具套件。它旨在提高计算机视觉和深度学…...

力扣刷MySQL-第五弹(详细讲解)
🎉欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹 ✨博客主页:小小恶斯法克的博客 🎈该系列文章专栏:力扣刷题讲解-MySQL 🍹文章作者技术和水平很有限,如果文中出…...

用C语言实现简单的三子棋游戏
目录 1 -> 模块简介 2 -> test.c 3 -> game.c 4 -> game.h 1 -> 模块简介 test.c:测试游戏逻辑 game.c: 函数的实现 game.h:函数的声明 2 -> test.c #define _CRT_SECURE_NO_WARNINGS 1#include "game.h";void menu() {printf("****…...

Yaklang 中的类型和变量
Yaklang 的类型其实非常简单,我们仅需要记住如下类型即可 string 字符串类型,用以快速构建一个字符串int 整数类型:在 64 位机中,int 和 int64 是一样的float 浮点类型,用来定义和表示浮点数byte 本质上等同于 uint8u…...

C语言从入门到实战——编译和链接
编译和链接 前言一、 翻译环境和运行环境二、 翻译环境2.1 预处理(预编译)2.2 编译2.2.1 词法分析2.2.2 语法分析2.2.3 语义分析 2.3 汇编2.4 链接 三、 运行环境 前言 在C语言中,编译和链接是将源代码转换为可执行文件的两个主要步骤。 编…...

【实战教程】ThinkPHP6分页功能轻松实现,让你的网站更高效!
ThinkPHP是一款非常流行的PHP开发框架,其最新版本ThinkPHP6在性能和易用性方面都得到了很大的改善。分页功能是网页开发中非常常见的功能,而ThinkPHP6也提供了非常方便的分页方法。本文将介绍如何实现ThinkPHP6的分页功能。 一、了解分页功能 在Web应用…...

专业130+总分380+哈尔滨工程大学810信号与系统考研经验水声电子信息与通信
今年专业课810信号与系统130,总分380顺利考上哈尔滨工程大学,一年的努力终于换来最后的录取,期中复习有得有失,以下总结一下自己的复习经历,希望对大家有帮助,天道酬勤,加油!专业课&…...

旅游项目day08
1. 旅游日记(游记) 后端:实体类,列表,查看,审核 前端:目的地明细中-游记->带范围条件查询,游记首页,【扩展】游记添加/编辑,【扩展】添加游记时间没登录时…...

蓝桥杯真题(Python)每日练Day2
题目 题目分析 对于本题首先确定其数据结构为优先队列,即邮费最小的衣服优先寄,算法符合贪心算法。可以直接使用queue库的PriorityQueue方法实现优先队列。关于PriorityQueue的使用方法主要有: import queue q queue.Queue()# 队列 pq qu…...

IntelliJ IDEA 拉取gitlab项目
一、准备好Gitlab服务器及项目 http://192.168.31.104/root/com.saas.swaggerdemogit 二、打开 IntelliJ IDEA安装插件 打开GitLab上的项目,输入项目地址 http://192.168.31.104/root/com.saas.swaggerdemogit 弹出输入登录用户名密码,完成。 操作Comm…...

RHCSA上课笔记(前半部分)
第一部分 网络服务 第一章 例行性工作 1.单一执行的例行性工作 单一执行的例行性工作(就像某一个时间点 的闹钟):仅处理执行一次 1.1 at命令:定时任务信息 [rhellocalhost ~]$ rpm -qa |grep -w at at-spi2-core-2.40.3-1.el9.x…...

C++代码入门05 字符串容器
图源:文心一言 上机题目练习整理,本篇作为字符串容器的代码,提供了常规解法及其详细解释,供小伙伴们参考~🥝🥝 第1版:在力扣新手村刷题的记录~🧩🧩 方法:常…...

vue3 项目中 arguments 对象获取失败问题
问题 在 vue3 项目中 获取到的 arguments 对象与传入实参不符,打印出函数中的 arguments 对象显示如下: 原因 作者仔细回看代码才发现,自己一直用的是 vue3 的组合式写法,函数都是箭头函数,而箭头函数不存在 argumen…...

12.线程同步
12.线程同步 1. 为什么需要线程同步2. 互斥锁2.1 互斥锁初始化2.1.1 PTHREAD_MUTEX_INITIALIZER 宏初始化2.1.2 使用函数初始化 2.2 加锁和解锁2.3 pthread_mutex_trylock()2.4 销毁互斥锁2.5 互斥锁死锁2.6 互斥锁的属性 3. 条件变量3.1 条件变量初始化3.2 通知和等待条件变量…...

开发安全之:System Information Leak: External
Overview 在调用 error_reporting() 过程中,程序可能会显示系统数据或调试信息。由 error_reporting() 揭示的信息有助于攻击者制定攻击计划。 Details 当系统数据或调试信息通过套接字或网络连接使程序流向远程机器时,就会发生外部信息泄露。 示例 1…...

burp靶场--文件上传
burp靶场–文件上传 https://portswigger.net/web-security/file-upload/lab-file-upload-remote-code-execution-via-web-shell-upload 1.文件上传 1、原理:文件上传漏洞是指Web服务器允许用户将文件上传到其文件系统,而不充分验证文件的名称、类型、…...

mac 中vscode设置root启动
1. 找到你的vscode app,点击鼠标右键------->选项----->在访达中显示 2. 终端中输入以下命令,不要点回车,不要点回车,输入一个空格 sudo chflags uchg 3. 然后将你的程序拖到终端,会自动…...

【MySQL数据库专项 一】一个例子讲清楚数据库三范式
好的,让我们以学校数据库中的一个表为例来说明第一范式(1NF)、第二范式(2NF)和第三范式(3NF)的概念。 什么是数据库三范式 数据库的范式(Normalization)是一组关于数据…...

【笔记】关于期刊
什么是统计源期刊 统计源期刊,全称为“中国科技论文统计源期刊”,也称作中国科技核心期刊,是由中国科技信息研究所(ISTIC)受国家科技部委托,选定的一系列在中国出版的高质量自然科学类学术期刊。这些期刊是…...

SpringMVC-.xml的配置
文章目录 一、对pom.xml的配置二、对web.xml1.第一种方式2. 第二种方式 三、对SpringMVC.xml的配置 一、对pom.xml的配置 <!-- 打包成war包--><packaging>war</packaging> <dependencies><!-- SpringMVC--><dependency><gro…...

Java找二叉树的公共祖先
描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节…...

《Linux高性能服务器编程》笔记03
Linux高性能服务器编程 本文是读书笔记,如有侵权,请联系删除。 参考 Linux高性能服务器编程源码: https://github.com/raichen/LinuxServerCodes 豆瓣: Linux高性能服务器编程 文章目录 Linux高性能服务器编程第07章 Linux服务器程序规范7.1日志7.2用…...

Java毕业设计-基于ssm的网上求职招聘管理系统-第85期
获取源码资料,请移步从戎源码网:从戎源码网_专业的计算机毕业设计网站 项目介绍 基于ssm的网上求职招聘管理系统:前端 jsp、jquery,后端 springmvc、spring、mybatis,角色分为管理员、招聘人员、用户;集成…...

UDP和TCP
UDP协议是一种不可靠的、面向无连接的协议。在通信过程中,它并不像TCP那样需要先建立一个连接,只要(目的地址,端口号,源地址,端口号)确定了,就可以直接发送信息报文,并且…...

【C++】vector容器接口要点的补充
接口缩容 在VS编译器的模式下,类似于erase和insert接口的函数通常会进行缩容,因此,insert和erase行参中的迭代器可能会失效。下图中以erase为例: 代码如下: #include <iostream> #include <vector> #inclu…...

electron-vite中的ipc通信
1. 概述 再electron中,进程间的通信通过ipcMain和ipcRenderer模块,这些通道是任意和双向的 1.1. 什么是上下文隔离进程 ipc通道是通过预加载脚本绑定到window对象的electron对象属性上的 2. 通信方式 2.1. ipcMain(也就是渲染进程向主进…...