Ubuntu 上传项目到 GitHub

一、前言

GitHub 作为时下最大的开源代码管理项目,广泛被工程和科研人员使用,本文主要介绍如何如何将自己的项目程序上传到 GitHub 上。

要上传本地项目到 GitHub 上,主要分为两步,第一步是

二、创建 SSH keys

首先登录 GitHub 官网并登录自己的帐号,点击右上角头像,显示

选择 settings,并选择 SSH and GPG keys,

点击 New SSH key,

此时需要我们设置一个 title 和 key,其中 title 可以随便取,但是 key 需要生成!

打开终端输入(这里 YOUR_EMAIL 为你注册 GitHub 帐号时的邮箱)

ssh-keygen -t rsa -C YOUR_EMAIL

中间会提示你输入内容,直接 enter 即可,不需要输入,结果如下

此时在 ~/.ssh 目录下会生存一个 id_rsa.pub 文件,其内容就是前面所需要的 Key,

将其内容复制到 Key 中

点击 Add SSH key 就成功创建了 SSH Key

接下来设置本地 git 的用户名和邮箱,终端输入

git config --global user.name "yourname"
git config --global user.email "email@email.com"

此时终端输入

ssh -T git@github.com

显示如下内容则表示成功连接 GitHub

如果连接不同,则终端输入

ssh-agent -s
ssh-add ~/.ssh/id_rsa

再重新连接,即可成功!

三、上传项目到 GitHub

接下来我们就可以往 GitHub 上传自己的项目了,首先进入 GitHub 主页

点击 + 号,输入项目名称并创建一个新的仓库

3.1 终端方式上传项目到 GitHub

接下来就可以在终端进入需要上传的项目所在文件夹,并开始上传项目了

(1)如果是新创建的项目(没有 .git 文件),则终端输入

echo "# project_name" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M master
git remote add origin git@github.com:xygxgn/project_name.git
git push -u origin master

结果显示

(2)如果是已经存在的项目(有 .git 文件),则终端输入

git remote add origin git@github.com:xygxgn/project_name.git

 如果出现报错

fatal: remote origin already exists.

先查看远程仓库信息,终端输入

git remote -v

结果显示

origin  git@github.com:xygxgn/project_name.git (fetch)
origin  git@github.com:xygxgn/project_name.git (push)

只需删除已关联的远程仓库即可,终端输入

git remote remove origin

此时再输入 git remote -v 就显示没有远程仓库了,然和重新输入更新 GitHub 上项目的命令

git remote add origin git@github.com:xygxgn/project_name.git

然和选择分支并上传

git branch -M master
git push -u origin master

结果显示

至此,就通过终端命令将项目上传到 GitHub 上了,此时打开 GitHub 可以看到已经有项目了

接下来介绍如何通过 VSCode 来更新项目

3.2 VSCode 方式上传项目到 GitHub

首先在 VSCode 中 快捷键 ctrl + ` 打开终端,并输入

ssh -T git@github.com

结果显示

Hi xygxgn! You've successfully authenticated, but GitHub does not provide shell access.

接下来关联远程仓库

git remote add origin git@github.com:xygxgn/project_name.git

如果出现 remote origin already exists,则说明远程仓库已经关联,直接下一步即可

接下来点击需要上传的项目文件(如果目录下没有文件说明没有文件有所改动,可以随便修改一下其中一个文件),比如我这里修改了 README.md 文件,添加了一行 hello

此时 git 会检测到文件改动,接下来点击文件右边的 + 号

将需要上传的文件添加到暂存区

然后在 Commit 上方输入一些修改的提示信息

然后点击 Commit

此时暂存库中内容已经修改成功,最后只需要将修改完成的内容上传到 GitHub 上,点击 Sync (或者点击)修改信息提示输入框右上方的三个点,选择 Pull, Push 栏目下的 Push to,然后选择要上传的仓库,同样可以上传到 GitHub 上

上图结果表明已经将修改后的项目上传到 GitHub上了,此时打开 GitHub 检查,可以看到

此时已经将修改的 hello 同步到 GitHub 上了,至此就成功将项目上传到 GitHub 上了!

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

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

相关文章

js的入口函数和作用

JavaScript的入口函数通常是整个应用程序或网页的起点。在浏览器环境中,最常见的入口函数是main函数,或者在更现代的JavaScript框架(如React或Vue)中,可能会有其他特定的入口函数。 以下是一个非常基础的JavaScript入…

Jenkins+Gitlab+Docker(Dockerfile)部署

Docker部署运行 ​ 上一篇内容中使用Jenkins(运行服务器)Gitlab(代码存储库)Webhook(网络钩子)的方式部署运行我们的项目。需要我们在服务器上做好很多相关的环境配置及依赖。 ​ 那么假如有这样一个场景:需要把不同技术栈的项目部署到同一台服务器上运行。比如PH…

如何开始使用 Kubernetes RBAC

基于角色的访问控制 (RBAC) 是一种用于定义用户帐户可以在 Kubernetes 集群中执行的操作的机制。启用 RBAC 可以降低与凭证盗窃和帐户接管相关的风险。向每个用户授予他们所需的最低权限集可以防止帐户拥有过多的特权。 大多数流行的 Kubernetes 发行版都从单个用户帐户开始,…

【MySQL × SpringBoot 突发奇想】全面实现流程 · 数据库导出Excel表格文件的接口

文章目录 【MySQL SpringBoot 小点子】全面实现流程 数据库导出Excel表格文件的接口1. 什么是VO(View Object)对象2. BeanCopyUtils进行两个对象的数据转移3. mapper层实现4. service层实现5. vo对象创建6. 保存路径配置7. controller层核心代码实现8.…

JavaFX: 使用本地openjfx包

JavaFX: 使用本地openjfx包 1、注释配置2、下载openjfx包3、导入openjfx的jar包 1、注释配置 build.gradle配置注释: 2、下载openjfx包 下载javaFx地址:https://gluonhq.com/products/javafx/ 3、导入openjfx的jar包

设计模式~状态模式(state)-23

目录 (1)优点: (2)缺点: (3)使用场景: (4)注意事项: (5)应用实例: 代码 在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。在状…

elasticsearch安装

安装elasticsearch 1.部署单点es 1.1.创建网络 因为我们还需要部署kibana容器,因此需要让es和kibana容器互联。这里先创建一个网络: docker network create es-net1.2.加载镜像 elasticsearch的镜像的tar包:点击下载 将其上传到虚拟机中…

电源集成INN3270C-H215-TL、INN3278C-H114-TL、INN3278C-H215-TL简化了反激式电源转换器的设计和制造。

一、概述 InnoSwitch™3-CP系列IC极大地简化了反激式电源转换器的设计和制造,特别是那些需要高效率和/或紧凑尺寸的产品。InnoSwitch3-CP系列将初级和次级控制器以及安全额定反馈集成到单个IC中。 InnoSwitch3-CP系列器件集成了多种保护功能,包括线路过…

Web前端-Vue2+Vue3基础入门到实战项目-Day4(组件的三大组成部分, 组件通信, 案例-组件版小黑记事本, 进阶语法)

Web前端-Vue2Vue3基础入门到实战项目-Day4 组件的三大组成部分(结构/样式/逻辑)scoped样式冲突data是一个函数 组件通信组件通信语法父传子子传父props详解什么是propsprops检验props与data的区别 非父子(扩展)事件总线 (event bus)provide - inject 案例 - 小黑记事本(组件版)…

gRPC之gRPC Gateway

1、gRPC Gateway etcd3 API全面升级为gRPC后,同时要提供REST API服务,维护两个版本的服务显然不太合理,所以 grpc-gateway 诞生了。通过protobuf的自定义option实现了一个网关,服务端同时开启gRPC和HTTP服务, HTTP服…

京东数据接口:京东数据分析怎么做?

电商运营中数据分析的重要性不言而喻,而想要做数据分析,就要先找到数据,利用数据接口我们能够更轻松的获得比较全面的数据。因此,目前不少品牌商家都选择使用一些数据接口来获取相关电商数据、以更好地做好数据分析。 鲸参谋电商…

2023年中国云计算软件市场规模、市场结构及市场份额情况分析[图]

云计算是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。云计算软件类型分为三类,即基础设施即服务、平台即服…

点云从入门到精通技术详解100篇-基于多尺度深度特征分析的点云模型法向估计(续)

目录 3.3 网络结构与损失函数设计 3.3.1 网络结构 3.3.2 损失函数设计

Python算法练习 10.14

leetcode 2095 删除链表的中间节点 给你一个链表的头节点 head 。删除 链表的 中间节点 ,并返回修改后的链表的头节点 head 。 长度为 n 链表的中间节点是从头数起第 ⌊n / 2⌋ 个节点(下标从 0 开始),其中 ⌊x⌋ 表示小于或等于…

非类型模板参数+模板的特化

目录 一、非类型模板参数 二、模板的特化 (一)函数模板特化 (二)类模板举例 1. 全特化 2. 偏特化 一、非类型模板参数 模板参数分类:类型形参与非类型形参。类型形参即:出现在模板参数列表中&#x…

通过webpack创建并打包js库到npm仓库

1.创建项目并进行基本配置 webpack配置文件: webpack.build.js const path require(path);module.exports {mode:development,entry:./src/webpack-numbers.js,output: {filename: webpack-numbers.js,path: path.resolve(__dirname, dist),clean: true,},}; p…

使用docker搭建kafka集群、可视化操作台

单机搭建 1 拉取zookeeper镜像 docker pull wurstmeister/zookeeper 2 启动zookeeper容器 docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper 3 拉取kafka镜像 docker pull wurstmeister/kafka 4 启动kafka镜像 docker…

【玩机】如何修改iPhone充电提示音!最详细简单保姆级教程~ 学费了可替换任意音频做你的专属充电提示音!——后厂村路灯

其实方法很简单,利用快捷指令,获得base64 位的音频文本,然后再充电时播放即可。 视频教程 【玩机】如何修改iPhone充电提示音!最详细简单保姆级教程 具体操作如下: 1.首先,网上找到需要设定的音频&#xf…

一个单身狗 和 两个单身狗

一个单身狗 一个数组中只有一个数字是出现一次&#xff0c;其他所有数字都出现了两次。 编写一个程序找出这个只出现一次的数字。 方法1(异或) a ^ a 0a ^ 0 a^满足结合律 #include<stdio.h> int main() {int arr[] { 1,2,3,4,5,4,2,3,5};int i 0;int ret 0;in…

Linux grep 命令参数使用方法[-vE]

Linux grep 命令参数使用方法[-vE] grep 常用参数常用的g r e p选项使用grep匹配“与”或者“或”模式 grep 常用参数 参数 -v #排除条件-E #多个条件使用&#xff0c;或例子&#xff1a;排除#号和空格行内容 #grep命令去掉空格行和以#开头的行 grep -vE ^#|^$ filename“…