怎么将Linux上的文件上传到github上

文章目录

  • 1. 先在window浏览器中创建一个存储项目的仓库
  • 2. 复制你的ssh下的地址
    • 1) 生成ssh密钥 : 在Linux虚拟机的终端中,运行以下命令生成ssh密钥
    • 2)将ssh密钥添加到github账号 : 运行以下命令来获取公钥内容:
  • 3. 克隆GitHub存储库:在Linux虚拟机的终端中,导航到您想要将文件上传到的目录。然后,使用命令`git clone`克隆Github存储库。例如:
  • 4.将文件添加到本地存储库:在虚拟机中,将要上传到GitHub的文件复制到刚刚克隆的存储库目录中。
  • 5.提交更改并推送到远程存储库:在终端中运行以下命令以提交更改并将其推送到远程存储库。
  • 锦囊妙计:你可能用到的补充:
    • 1.
    • 2.
    • 3. 克隆仓库的某个分支
    • 4.

1. 先在window浏览器中创建一个存储项目的仓库

在这里插入图片描述

2. 复制你的ssh下的地址

在这里插入图片描述

一般情况下,你是肯定没有安装过公私钥的,接下来教你安装公钥

1) 生成ssh密钥 : 在Linux虚拟机的终端中,运行以下命令生成ssh密钥

ssh-keygen -t rsa -b 4096 -C "your-email@example.com"然后,你一直按回车就可以了

请确保将"your-email@example.com"替换为您在GitHub上注册的电子邮件地址。然后,按照提示完成密钥生成过程。

2)将ssh密钥添加到github账号 : 运行以下命令来获取公钥内容:

cat ~/.ssh/id_rsa.pub

复制输出的公钥内容。

登录到GitHub账号,点击右上角的头像,进入"Settings"(设置)页面。
选择"SSH and GPG keys"(SSH和GPG密钥)选项卡,点击"New SSH key"(新建SSH密钥)。
在"Title"(标题)字段中,为密钥提供一个描述性的名称(比如 : 直接命名为你服务器的ip地址)。
将之前复制的公钥粘贴到"Key"(密钥)字段中。
最后,点击"Add SSH key"(添加SSH密钥)完成添加过程。

至此,你再重新登录你的github,你会发现,没有之前的警告提示了,说明你已成功添加ssh密钥!!!

在这里插入图片描述

这时候,你就得到了你ssh下的仓库地址:

git@github.com:xxx/xxxxxxx.git

3. 克隆GitHub存储库:在Linux虚拟机的终端中,导航到您想要将文件上传到的目录。然后,使用命令git clone克隆Github存储库。例如:

git clone git@github.com:username/repository.git后面这个:git@github.com:username/repository.git
就是你刚才,得到的你ssh下的仓库地址:
git@github.com:xxx/xxxxxxx.git

此时,你会发现:github上的那个仓库被克隆到了你的虚拟机中

在这里插入图片描述

4.将文件添加到本地存储库:在虚拟机中,将要上传到GitHub的文件复制到刚刚克隆的存储库目录中。

比如 : 我复制了一个Nginx的目录

wxncom@wxncom-virtual-machine:~/T$ ls
Cluster_CPP_server
wxncom@wxncom-virtual-machine:~/T$ cd Cluster_CPP_server/
wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ ls
README.md
wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ cp ../../Nginx/ ./ -r
wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ ls
Nginx  README.md

5.提交更改并推送到远程存储库:在终端中运行以下命令以提交更改并将其推送到远程存储库。

总结一下:

cd repository   # 进入克隆的存储库目录# 前几步,我们已经OK了,直接进行下面的步骤:git config --global user.email "you@example.com"
git config --global user.name "Your Name"git add .       # 添加所有更改的文件
git commit -m "Add files"    # 提交更改,"Add files"是提交的注释
git push origin master    # 推送更改到远程存储库的master分支,注意,一般情况下,刚创建的分支只有main分支,所以你要写git push origin main

在这里插入图片描述

wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ git push origin main
Counting objects: 588, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (573/573), done.
Writing objects: 100% (588/588), 7.38 MiB | 773.00 KiB/s, done.
Total 588 (delta 97), reused 0 (delta 0)
remote: Resolving deltas: 100% (97/97), done.
To github.com:1AoB/Cluster_CPP_server.gitf2603b1..671b6b3  main -> main

呦吼 ! 至此 , 作为一个大?学生,你已掌握了一个非常重要的技能!!!

希望未来 , 咱们能学会更多好玩的it技能!!!

锦囊妙计:你可能用到的补充:

1.

wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ git push origin master
error: src refspec master does not match any.
error: failed to push some refs to 'git@github.com:1AoB/Cluster_CPP_server.git'
wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ git push origin main
To github.com:1AoB/Cluster_CPP_server.git! [rejected]        main -> main (fetch first)
error: failed to push some refs to 'git@github.com:1AoB/Cluster_CPP_server.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.这个错误提示表明远程仓库中的分支与你本地仓库中的分支存在冲突,导致无法推送。解决这个问题的方法是先拉取远程仓库的更新,然后再将你的更改合并后再次进行推送。请按照以下步骤进行操作:1.首先,运行以下命令来拉取远程仓库的更新:
git pull origin main
如果你在本地使用的是 "master" 分支而不是 "main" 分支,请相应地更改命令中的分支名称。2.Git 将尝试自动合并你的更改和远程的更新。如果发生冲突,你需要手动解决冲突。Git 会在出现冲突的文件中标记冲突的部分,你需要编辑这些文件并手动解决冲突。
# 这个时候 , 你应该进入了一个git的文本编辑器
# 这个部分还是不是很懂,如果我的话,当时是其实上误删了一个不重要的文件,然后就产生冲突了,所以到了这一步,我也无序解决什么冲突,直接退出这个界面. <要退出这个界面,你可以按下 Ctrl + X 键,然后输入 Y(表示是)来保存更改,或者输入 N(表示否)来放弃更改并退出。>3.解决完冲突后,运行以下命令将解决后的更改提交到本地仓库:
git add .
git commit -m "Merge remote changes"4.最后,运行以下命令将更改推送到远程仓库:
git push origin main
同样,如果你使用的是 "master" 分支而不是 "main" 分支,请相应地更改命令中的分支名称。通过以上步骤,你应该能够成功将本地更改合并到远程仓库中。

2.

wxncom@wxncom-virtual-machine:~/T/Cluster_CPP_server$ git push origin master
error: src refspec master does not match any.
error: failed to push some refs to 'git@github.com:1AoB/Cluster_CPP_server.git'这个错误提示表明在本地仓库中没有找到名为 "master" 的分支。通常,这是由于还没有进行过任何提交导致的。请按照以下步骤检查和解决问题:1.确保已经进行了至少一次提交:
运行以下命令来查看当前本地分支的情况:
git branch
如果没有任何分支被列出,或者只有默认的 "main" 分支,则说明你尚未进行过任何提交。可以通过运行以下命令来创建并切换到一个新分支(例如 "dev" 分支):
git checkout -b dev
然后添加、提交你的更改:
git add .
git commit -m "Initial commit"2.确定远程仓库的正确名称和地址:
运行以下命令来查看远程仓库的列表:
git remote -v
确保远程仓库的名称为 "origin",且与你要推送的远程仓库地址匹配。3.推送到远程仓库:
运行以下命令来将本地分支推送到远程仓库:
git push origin <branch-name><branch-name> 替换为你想要推送的分支名称(例如 "main""dev")。如果上述步骤中的任何一项出现问题,请检查你的本地仓库状态、远程仓库设置和分支名称,并确保正确操作。

3. 克隆仓库的某个分支

git clone git@github.com:xxxxx/xxxxxxxxxxxxx.git

我发现安装上面的这样,只能克隆仓库的第一个分支,我就想 : 如何修改我就可以克隆任意分支了?

在克隆 Git 仓库时,默认情况下只会克隆主分支(通常是 “master” 或 “main” 分支)。如果你想克隆其他分支,可以通过以下两种方法之一来实现:

  1. 在克隆命令中指定要克隆的分支:
git clone -b <branch-name> git@github.com:1AoB/Cluster_CPP_server.git

<branch-name> 替换为你想要克隆的分支名称。

eg : 如果要克隆 “dev” 分支,可以使用以下命令:

git clone -b dev git@github.com:1AoB/Cluster_CPP_server.git
  1. 克隆完整的仓库,并在克隆后切换到特定分支:
git clone git@github.com:1AoB/Cluster_CPP_server.git
cd Cluster_CPP_server
git checkout <branch-name>

先使用普通的 git clone 命令克隆整个仓库,然后进入克隆后的目录,使用 git checkout 命令切换到你想要的分支。

无论你选择哪种方法,都能够让你克隆特定的分支而不仅仅是默认的主分支。

4.

在git push origin master中,遇到了一个
warning: suboptimal pack - out of memory你觉得,这个有什么影响吗?

当你在 Git 中遇到 “warning: suboptimal pack - out of memory” 的警告消息时,它表示 Git 在创建或操作打包文件时遇到了内存不足的问题。这可能会影响 Git 操作的性能和效率。

这个"内存不足" 的警告消息指的是你的虚拟机或本地系统内存不足,而不是 GitHub 上的内存问题。

系统内存可以类比为手机的运行内存。

这个问题是你的虚拟机不太行,需要花钱升级为系统内存更大的虚拟机.

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

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

相关文章

Springboot实现登录功能(token、redis、登录拦截器、全局异常处理)

登录流程&#xff1a; 1、前端调用登录接口&#xff0c;往接口里传入账号&#xff0c;密码 2、根据账号判断是否有这个用户&#xff0c;如果有则继续判断密码是否正确 3、验证成功后&#xff0c;则是根据账号&#xff0c;登录时间生成token&#xff08;用JWT&#xff09; 4、将…

数据结构与算法(四):哈希表

参考引用 Hello 算法 Github&#xff1a;hello-algo 1. 哈希表 1.1 哈希表概述 哈希表&#xff08;hash table&#xff09;&#xff0c;又称散列表&#xff0c;其通过建立键 key 与值 value 之间的映射&#xff0c;实现高效的元素查询 具体而言&#xff0c;向哈希表输入一个键…

VR开发(一)——SteamVR实现摇杆移动

一、基础环境搭建 1.AssetStore 找到SteamVR并导入&#xff1b; 2.添加一个 VR 中代表玩家自己的物体。我可以打开 Assets/SteamVR/InteractionSystem/Core 文件夹&#xff0c;将 Player 物体拖入场景&#xff1a; 二、修改手柄按钮映射集 3.windows/steamVR input&#xff…

Http常见问题

说说 HTTP 常用的状态码及其含义&#xff1f; HTTP 状态码首先应该知道个大概的分类&#xff1a; 1XX&#xff1a;信息性状态码2XX&#xff1a;成功状态码3XX&#xff1a;重定向状态码4XX&#xff1a;客户端错误状态码5XX&#xff1a;服务端错误状态码 301&#xff1a;永久性…

C#,数值计算——数据建模FGauss的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class FGauss : MultiFuncd { public void funk(double x, double[] a, ref double y, double[] dyda) { int na a.Length; y 0.0; for (int …

卷积网络的发展历史-LeNet

简介 LeNet是CNN结构的开山鼻祖&#xff0c;第一次定义了卷积神经网络的结构。 LeNet模型包含了多个卷积层和池化层&#xff0c;以及最后的全连接层用于分类。其中&#xff0c;每个卷积层都包含了一个卷积操作和一个非线性激活函数&#xff0c;用于提取输入图像的特征。池化层…

TCP端口崩溃,msg:socket(): Too many open files

一、现象 linux系统中运行了一个TCP服务器&#xff0c;该服务器监听的TCP端口为10000。但是长时间运行时发现该端口会崩溃&#xff0c;TCP客户端连接该端口会失败&#xff1a; 可以看到进行三次握手时&#xff0c;TCP客户端向该TCP服务器的10000端口发送了SYN报文&#xff0c;…

驱动器类产品的接口EMC拓扑方案

驱动器类产品的接口EMC拓扑方案 1. 概述 本文以高压伺服驱动器和变频器类产品为例&#xff0c;对常用端口滤波拓扑方案进行总结&#xff0c;后续根据不同的应用场景可进行适当删减&#xff0c;希望对大家有帮助。 2. 驱动器验证等级 本文推荐拓扑的实验结果&#xff0c;满足…

jar 命令启动java 指定配置文件路径 jar如何启动

一、各种启动方式 1.java -jar # 例子 java -jar test.jar 1. 2. 这是最简单的启动方式&#xff0c;同时弊端也是很多的。 弊端1&#xff1a;exit 退出终端会导致java进程中断。 弊端2&#xff1a;ctrlc 退出启动展示页会导致java进程中断。 弊端3&#xff1a;直接关闭终端会…

IDEA添加Vue文件模板

代码模板&#xff1a; <!-- *${COMPONENT_NAME} *author niemengshi *date ${DATE} ${TIME} --> <template> #[[$END$]]# </template> <script> export default { name: "${COMPONENT_NAME}", props: { }, components: {}, mounted: {}, d…

mysql-执行计划

1. 执行计划表概述 id相同表示加载表的顺序是从上到下。 id不同id值越大&#xff0c;优先级越高&#xff0c;越先被执行。id有相同&#xff0c;也有不同&#xff0c;同时存在。 id相同的可以认为是一组&#xff0c;从上往下顺序执行&#xff1b;在所有的组中&#xff0c;id的值…

洛谷刷题:数组

好累&#xff0c;学习令我快乐 一、小鱼比可爱 题目链接&#xff1a;https://www.luogu.com.cn/problem/P1428 题目描述 人比人&#xff0c;气死人&#xff1b;鱼比鱼&#xff0c;难死鱼。小鱼最近参加了一个“比可爱”比赛&#xff0c;比的是每只鱼的可爱程度。参赛的鱼被从…

吃鸡达人必备!提高战斗力、分享干货、查询安全!

大家好&#xff01;作为吃鸡玩家&#xff0c;想必大家都希望能够提高自己的游戏战斗力&#xff0c;分享顶级游戏作战干货&#xff0c;并且方便进行作图、查询装备皮肤库存&#xff0c;更重要的是&#xff0c;防止被骗游戏账号进入黑名单。今天&#xff0c;我就给大家介绍一家专…

bochs 对 Linux0.11 进行调试 (TODO: 后面可以考虑集成 vscode+gdb+qemu)

我在阅读 Linux0.11 源码时&#xff0c;对一个指令 LDS 感到困惑。 看了下 intel 指令集手册&#xff0c;能猜到 LDS 的功能&#xff0c;但不确定。 于是决定搭建调试环境&#xff0c;看看 LDS 的功能是否真如自己猜测。 首先 make debug 运行 qemu-Linux0.11&#xff0c;命…

【Linux】UDP的服务端 + 客户端

文章目录 &#x1f4d6; 前言1. TCP和UDP2. 网络字节序2.1 大小端字节序&#xff1a;2.2 转换接口&#xff1a; 3. 服务端socket3.1 成员变量&#xff1a;3.2 socket接口&#xff1a;3.3 sockaddr结构&#xff1a;3.4 配置sockaddr_in&#xff1a;3.5 inet_addr&#xff1a;3.6…

吃鸡高手必备工具大揭秘!提高战斗力,分享干货,一站满足!

大家好&#xff01;你是否想提高吃鸡游戏的战斗力&#xff0c;分享顶级的游戏作战干货&#xff0c;方便进行吃鸡作图和查询装备皮肤库存&#xff1f;是否也担心被骗&#xff0c;希望查询游戏账号是否在黑名单上&#xff0c;或者查询失信人和VAC封禁情况&#xff1f;在这段视频中…

【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)

一&#xff0c;VMware下载地址&#xff1a; 百度网盘链接链接&#xff1a;百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固&#xff0c;支持教育网加速&#xff0c;支持手机端。注册使用百度网盘即可享受免费存储空间https:/…

leetcode - 双周赛114

一&#xff0c;2869.收集元素的最小操作次数 // 解法&#xff1a;哈希表 从右往左遍历 class Solution {public int minOperations(List<Integer> nums, int k) {Set<Integer> set new HashSet<>();for(int i1; i<k; i){set.add(i);}for(int inums.size…

AI:08-基于深度学习的车辆识别

随着汽车行业的迅速发展,车型识别在交通管理、智能驾驶和车辆安全等方面变得越来越重要。基于深度学习的车型识别技术为实现高效准确的车辆分类和检测提供了强大的工具。本文将介绍如何利用深度学习技术来实现车型识别,并提供相应的代码示例。 数据收集和预处理: 为了训练…

如何使用 Hotshot 通过文字生成 GIF 动画

Hotshot 是一个基于人工智能的工具&#xff0c;可用于通过文字生成 GIF 动画。该工具使用最新的图像生成技术来创建逼真的动画&#xff0c;即使是复杂的文字描述也能做到。 hotshot访问地址 使用 Hotshot 生成 GIF 动画 要使用 Hotshot 生成 GIF 动画&#xff0c;您需要首先…