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. [PyTorch入门之60分钟入门闪击战]之神经网络

    神经网络 来源于这里. 神经网络可以使用torch.nn包构建. 现在你对autograd已经有了初步的了解,nn依赖于autograd定义模型并区分它们.一个nn.Module包含了层(layers ...

  2. Swizzling的使用

    在oc的runtime机制内有一类方法是可以用来实现类间的方法替换.解决了我们实际开发中诸多常规手段所无法解决的问题.关于Method Swizzling,这里有一篇介绍基本用法的文章 场景 最近出于 ...

  3. runR

    Linux下使用R 运行linux下的R脚本 编写R文件 新建后缀名为R的文件 写入R程序 在脚本首行加入 1 运行R文件 这里有两种方式 大专栏  runR进入R的环境">进入R的环 ...

  4. create view and switch view

    pageView扩展backbone cAbstractApp定义view加载.切换.回退.跳转-webApp/cWebViewApp/hybirdApp为其子类 1.cWebApp扩展了父类的bin ...

  5. Codeforces Round #612 (Div. 2)C. Garland

    第四次写题解,请多指教! http://codeforces.com/contest/1287/problem/C题目链接 题目大意是有一个数字串挂有1-n n个数字,现在上面缺失了一些数字,让你找出 ...

  6. C++走向远洋——37(工资类,2)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:salarly.cpp * 作者:常轩 * 微信公众号:Worl ...

  7. 全网最详细的一篇Flutter 尺寸限制类容器总结

    Flutter中尺寸限制类容器组件包括ConstrainedBox.UnconstrainedBox.SizedBox.AspectRatio.FractionallySizedBox.Limited ...

  8. springboot 解决实体类值为null或者数组为空,不返回前台

    一个注解解决问题 @JsonInclude(JsonInclude.Include.NON_EMPTY) @JsonInclude(JsonInclude.Include.NON_NULL)

  9. 【译】使用FormData对象

    系列文章说明 原文 FormData对象能让你生成一系列用于XMLHttpRequest发送的键值对.它主要的目的在于发送表单数据,但也能独立用于传输有键形式的数据.其传输的数据格式和表单使用subm ...

  10. SPA那点事

    前端猿一天不学习就没饭吃了,后端猿三天不学习仍旧有白米饭摆于桌前.IT行业的快速发展一直在推动着前端技术栈在不断地更新换代,前端的发展成了互联网时代的一个缩影.而单页面应用的发展给前端猿分了一杯羹. ...