1.安装GitCtrl + Alt + T使用终端:使用命令

  1. sudo apt-get install git

2.创建GitHub帐号:登陆git主页: https://github.com/,自己注册一个账号

3.生成ssh key:终端使用命令

  1. ssh-keygen -t rsa -C "your_email@youremail.com"

默认在用户文件夹中的 .ssh/id_rsa.pub,(.ssh是隐藏文件夹,需要设置显示隐藏文件夹)复制其中的一串字符。

 

4.添加SSH key:回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴你的key。

5.测试ssh key是否成功:使用命令

  1. ssh -T git@github.com

如果出现You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。如果出现“Agent admitted failure to sign using the key.Permission denied (publickey).”这个错误的话,在命令行下执行

  1. ssh -add

这样就可以了。

6.配置Git的配置文件,username和email:

  1. git config --global user.name "your name"   //配置用户名
  1. git config --global user.email "your email"    //配置email

7.在Git上添加一个Repository

 

8.利用Git从本地上传到GitHub(也就是说在Git上创建了一个空的repository,但是本地的代码并没有push上去)
8.1.进入要所要上传文件的目录输入命令

  1. git init

8.2.创建一个本地仓库,使用命令

  1. git remote add origin git@github.com:yourName/yourRepo.git

其中youName是你的GitHub的用户名,yourRepo是你要上传到GitHub的仓库

8.3.添加一个文件xxx到本地仓库,使用命令

  1. git add xxx

也可以使用

  1. git add .

自动判断添加哪些文件

8.4.把这个添加提交到本地的仓库,使用命令

  1. git commit -m "提交的说明信息”

通常在“提交的说明信息“中注明此时push的相关信息,例如内容的更新或bug的修复等。
8.5.把本地仓库提交到远程的GitHub仓库,使用命令

  1. git push -u origin master

如果出现错误:无法推送一些引用到 'git@github.com:yourname/xxx.git'提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外一个版本库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更(如 'git pull ...'):则使用强行更新 +master:

  1. git push -u origin +master

这样就能够把本地仓库的代码push到我们Git上的Repository了~

8.6.如果说我们修改了代码,想再次push上去,此时我们Git上已经有了之前的版本内容了,只需要执行以下的命令就可以了,同样进入所要上传的文件的目录,提交修改:

  1. git add .   --->   git commit -m "提交的说明信息"   --->   git push -u origin master

9.从GitHub克隆项目到本地(也就是说可能与别人共同合作一个project,此时别人的Git上已经有代码了,你想把别人的代码”下载“到自己本地(本地没有建立任何项目))

9.1.到Git的仓库右边复制“HTTPS clone url”
9.2.回到要存放的目录下,使用命令

  1. git clone https://github.com/PentonBin/Demo.git(例子)

clone下来之后就能把整个project clone下来了~

9.3.如果本地的版本不是最新的,可以使用命令

  1. git fetch origin

9.4.把更新的内容合并到本地分支,可以使用命令

  1. git merge origin/master

10.Git回滚操作
10.1.先使用

  1. git log

查看日志,找到想要回滚的版本:git log
10.2.再使用

  1. git reset

回滚到指定版本,如

  1. git reset –hard 4bb7bbc07f4b3792b48a6001bdfcc2b694cd3c81(这一串为commit的值)

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

好了,以上就是GitHub的简单使用,推荐一个Git简易使用的web:http://www.bootcss.com/p/git-guide/

转载--菜鸟Linux上使用Github的更多相关文章

  1. (转载)Linux上iptables防火墙的基本应用教程

    (转载)http://www.vpser.net/security/linux-iptables.html iptables是Linux上常用的防火墙软件,下面vps侦探给大家说一下iptables的 ...

  2. 【转载】LINUX上MYSQL优化三板斧

    现在MySQL运行的大部分环境都是在Linux上的,如何在Linux操作系统上根据MySQL进行优化,我们这里给出一些通用简单的策略.这些方法都有助于改进MySQL的性能. 闲话少说,进入正题. 一. ...

  3. 转载:【Oracle 集群】RAC知识图文详细教程(六)--RAC在LINUX上使用NFS安装前准备

    文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...

  4. Linux下的GitHub安装与简单配置教程 ~ 转载

    Linux下的GitHub安装与简单配置教程   1.GitHub简介 Git是一个分布式版本控制系统,与其相对的是CVS.SVN等集中式的版本控制系统. 2.Git的安装 1)安装Git a.查看与 ...

  5. 将linux上的项目传到github上

    在网友的帮助下,终于学会了这一招. 1.首先要确定你的linux上有安装了git. 2.到你的网页github上新建一个仓库,将其clone到linux上. 3.将你的项目放进这个空的仓库(文件夹). ...

  6. linux上传下载文件(转载https://www.jb51.net/article/143112.htm)

    转载于:https://www.jb51.net/article/143112.htmLinux下目录复制:本机->远程服务器 1 scp -r /home/shaoxiaohu/test1 z ...

  7. 转载:JProfiler远程监控LINUX上的Tomcat过程细讲

    来源于xuwanbest的博客   所谓"工欲善其事,必先利其器",好的工具确能起到事半工倍的作用.我用到的最多的就两个JConsole 和JProfiler .JConsole监 ...

  8. (转载)如何借助KeePassX在Linux上管理多个密码

    转自:http://netsecurity.51cto.com/art/201311/417764.htm 如今,基于密码的身份验证在网上非常普遍,结果你恐怕数不清自己到底在使用多少个密码.实际上,据 ...

  9. 记一个菜鸟在Linux上部署Tomcat的随笔

    以前都只是在园子里找各种资料.文档.各种抱大腿,今天是第一次进园子里来添砖加瓦,实话说,都不知道整些啥东西上来,就把自己在Linux上搭建Tomcat的过程记录下来,人笨,请各位大虾们勿喷. 虽然做开 ...

随机推荐

  1. centos IPTables 配置方法

    entos IPTables 配置方法 http://os.51cto.com/art/201103/249359_1.htm iptables 指南 1.1.19 http://www.frozen ...

  2. C++的历史与现状

    在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后 ...

  3. Eclipse中复制android项目后要改动的地方

    1.清单文件中,改package=2.修改包名3.清单文件中app_name F3点进去修改名字

  4. mysql索引学习

    索引用于快速找出在某列中有一特定值的行. 如果不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行. 表越大,查询数据所花费的时间越多. 如果表中查询的列有一个索引,MySQL能快速 ...

  5. sama5d3 环境检测 adc测试

    #include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h># ...

  6. Memcache内存分配策略

    一.Memcache内存分配机制 关于这个机制网上有很多解释的,我个人的总结如下. Page为内存分配的最小单位. Memcached的内存分配以page为单位,默认情况下一个page是1M,可以通过 ...

  7. 【转】【Linux】sed命令详解

    sed命令详解 sed是stream editor的简称,也就是流编辑器.它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令 ...

  8. Android_Zip解压缩工具

    public class ZipUtil { public ZipUtil(){ } /** * DeCompress the ZIP to the path * @param zipFileStri ...

  9. media wiki run on nginx

    1. 环境安装: nginx安装 nginx-1.5.7 php安装 PHP 5.4.10 (cli) (built: Jul 30 2014 16:45:08) mysql安装 Ver 14.14 ...

  10. 数据降维PCA——学习笔记

    PCA主成分分析 无监督学习 使方差(数据离散量)最大,更易于分类. 可以对隐私数据PCA,数据加密. 基变换 投影->内积 基变换 正交的基,两个向量垂直(内积为0,线性无关) 先将基化成各维 ...