GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。

作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。

下面就由我来给大家介绍Linux系统中如何将代码托管到github

操作系统:Ubuntu19.10

一、注册github账号

该步骤和其他网站注册操作基本一致,在此我就不过多赘述。

二、生成SSH key

SSH key提供了一种与GitHub通信的方式,通过这种方式,能够在不输入密码的情况下,将GitHub作为自己的remote端服务器,进行版本控制。

1.检测主目录内是否存在SSH key

在主目录里搜索是否有名为.ssh的文件名,且里面包含id_rsa和id_rsa.pub两个文件。若存在,可直接跳到安装后的步骤

2.若不存在SSH key,则创建SSH key

ssh-keygen -t rsa -C "你的邮箱地址"

输入上述代码,将双引号之间的内容换成自己的邮箱地址,后面的输入行全部按回车键,也会出现一次输入密码界面,输入用户密码即可。

安装成功如下图所示:

然后打开主文件夹,勾选上面的显示隐藏文件选项,就可以看见.ssh文件已经下载到我们的主目录中了

3.登录github,点击设置,找到设置下的选项---SSH和GPG密钥被(SSH密钥下应该是空白的,因为我之前添加过,所以这里会有一个密钥)

4.点击右上角---新的SSH密钥

5.标题可随便输入,打开之前下载好的.ssh文件,打开其中的id_rsa.pub文件,将其中的内容复制到《键》中

(id_rsa.pub是公钥,可以对外展示;id_rsa是私钥,不要对外公开)

6.点击《添加SSH秘钥》,SSH密钥就设置成功了,就可以看到SSH密钥下多出一个密钥

三、上传项目

在终端输入 git 命令

若出现下图字样,则表示未安装git

输入下列命令安装git

sudo apt-get install git

输入密码,输入y,按下回车等待安装完成

安装完成后再次输入 git  出现下列样式表示安装成功

安装好git环境后,就可以开始上传项目了

1.从终端进入要上传项目的文件夹,在该路径下输入下列命令进行初始化

git init

2.添加要上传的文件

git add 文件名

将该处文件名替换成想要上传的文件名

如果想要上传整个文件夹,输入如下命令

git add ./

3.检查文件是否上传到git库内

在终端输入

git status

可看到我们刚刚添加的文件/文件夹

4.将缓存区的修改提交到本地仓库

将缓存区新增的文件提交到仓库

git commit -m "文本注释"

其中文本注释更改成项目相关,方便今后找到这个项目

若输入命令后出现错误

错误解决方案:因为在上面的操作中已经生成了一个.git隐藏文件,需要对文件进行修改才可以执行上一步的操作。

cd ./.git
vim ./.git

进入编辑模式后,在文件末尾插入文本

 [user]
email = xxx //填上你的邮箱地址
name = xxx //填上你的用户名

ps:此时若还是报错,则是因为user添加的不正确,可以尝试手动输入连接github,分别输入以下的命令

git config --global user.email "邮箱地址"
git config --global user.name "用户名"

再重新输入

git commit -m "对文件的注释"

成功后可看到如下样式

四、构建一个仓库

点击右上角的个人头像,选择---您的存储库

进入之后选择新建

自定义仓库名称,下面的选项选择---公开(选择私有需要充值)

点击创建仓库,新的仓库就已经创建好了

五、添加文件到远程库

点击仓库名称进入仓库

如果我们想在仓库中存储内容,必须先获得仓库的SSH密钥

点击右边的克隆或下载

复制搜索框里面的内容

接着创建一个名为origin远程仓库

git remote add origin 刚复制的SSH密钥

添加文件到远程库

git remote set-url origin 刚复制的SSH密钥

为了保证上传到github的文件可以上传成功,先要将所有的文件缓存到,再使用push一并传上去

git pull --rebase origin master

使用push指令上传文件

git push origin master

若更新内容,则输入

git push

此时我们再打开github,刷新一下就可以发现仓库中多出来了我们刚刚上传的文件

到此为止我们就已经在github上成功上传了一个文件,如果我们只是想要将github作为我们保管文件的数据库,就不需要过多的深究他的原理,只要可以熟练使用语句来执行上传和修改操作就已经足够我们的学习和工作所用。

ubuntu在github上传项目的更多相关文章

  1. 用Git向gitHub上传项目

    用Git向gitHub上传项目 1.安装git 2.在git安装目录下,运行git-bash.exe  如图所示 3.在git中绑定你注册gitHub是的用户名.邮箱. $ git config -- ...

  2. GitHub上传项目,使用desktop(客户端)教程

    GitHub上传项目,使用desktop(客户端)教程  搜索“GitHub上传项目”,能得到很多相关的文章教程,里面讲的都特别麻烦,要弄什么ssh之类的,可算是吓坏了我,使我非常的怀疑为什么GitH ...

  3. GitHub上传项目到远程库

    写文章 GitHub上传项目到远程库     GitHub上传项目到远程库 今天把想把文件托管到GitHub仓库,但是执行一系列的命令以后,刷新GitHub网站还是没有任何更新.后来终于找到原因,原来 ...

  4. Github上传项目及更新自己的项目

    更新:请前往下载Github Deskdop,Git命令什么的再也不用啦! 一.首次上传项目 1.在GitHub上创建对应仓库 仓库建立如下: README文件不用勾选,否则初次上传文件就要合并. 2 ...

  5. idea github 上传项目

    1.创建本地仓库,VCS-->Import into Version Control-->Create Git Repository... 在弹框中选中项目所在的位置,点击OK,此时项目文 ...

  6. github上传项目(使用git)、删除项目、添加协作者

    一.注册github账号 github网址https://github.com/ 下一步 然后,你的邮箱会收到一封邮件,进行邮箱验证就行了 二.创建github仓库 登录你的github,在首页的右方 ...

  7. 从本地向 Github 上传项目步骤攻略(快速上手版)

    最近想把之前自己做的一些好玩的项目共享到Github,网上找了一圈上传教程,都感觉写的太深奥.复杂,云里雾里,特把自己的方法纪录如下: PS:这种方式一般适用于:开始做项目时,没有直接在github上 ...

  8. github上传项目

    前置说明: 1.github上已经创建好的repositories,没有的可以自己创建一个 2.已经安装好的git,下载源推荐https://pan.baidu.com/s/1kU5OCOB#list ...

  9. 如何通过github上传项目并在readme.md中展示图片二维码

    将本地项目上传至github   第一步:git init (创建仓库)   第二步:git add README.md (添加项目)git add *   第三步:git commit -m &qu ...

随机推荐

  1. postgresql学习记录1

    数据库9.3.5,系统fedora20,不同系统操作略有不同. 使用yum 命令安装即可:sudo yum install postgresql,postgresql-server 安装完毕后系统中会 ...

  2. LeetCode~1033.移动石子直到连续

    1033.移动石子直到连续 三枚石子放置在数轴上,位置分别为 a,b,c. 每一回合,我们假设这三枚石子当前分别位于位置 x, y, z 且 x < y < z.从位置 x 或者是位置 z ...

  3. 使用HtmlAgilityPack和ScrapySharp抓取网页数据遇到的几个问题解决方法——格式编码问题

    需要用到对应市区县街道居委会的区域编码,于是找到统计局的网页,对这些数据进行抓取,用到了HtmlAgilityPack和ScrapySharp,由于也是第一次从网页抓取数据,所以对于HtmlAgili ...

  4. ZYNQ自定义AXI总线IP应用——PWM实现呼吸灯效果

    一.前言 在实时性要求较高的场合中,CPU软件执行的方式显然不能满足需求,这时需要硬件逻辑实现部分功能.要想使自定义IP核被CPU访问,就必须带有总线接口.ZYNQ采用AXI BUS实现PS和PL之间 ...

  5. springboot创建,自动装配原理分析,run方法启动

    使用IDEA快速创建一个springboot项目 创建Spring Initializr,然后一直下一步下一步直至完成 选择web,表示创建web项目 运行原理分析 我们先来看看pom.xml文件 核 ...

  6. Java技术-3-Java程序基本结构

    下面是一个完整的Java程序, /** * 可以用来自动创建文档的注释 */ public class Hello { public static void main(String[] args) { ...

  7. Web前端经典面试试题(二)

    上次由于时间有限只分享了一部分的前端面试题,所以本篇继续分享前端经典面试试题 一. 栈和队列的区别? 栈的插入和删除操作都是在一端进行的,而队列的操作却是在两端进行的. 队列先进先出,栈先进后出. 栈 ...

  8. LeetCode 33,在不满足二分的数组内使用二分的方法

    本文始发于个人公众号:TechFlow,原创不易,求个关注 链接 Search in Rotated Sorted Array 难度 Medium 描述 给定一个升序排列的数组,它被分成两部分之后交换 ...

  9. Apache Druid 的集群设计与工作流程

    导读:本文将描述 Apache Druid 的基本集群架构,说明架构中各进程的作用.并从数据写入和数据查询两个角度来说明 Druid 架构的工作流程. 关注公众号 MageByte,设置星标点「在看」 ...

  10. 【,NetCore】WebApi使用统一时间格式

    1.在Startup中配置统一时间格式 services.AddMvc() .AddJsonOptions(options => { //配置时间序列化格式 options.Serializer ...