1.

安装git:

sudo apt-get install git-core git-gui git-doc

2.到https://github.com/ 注册一个帐号,一会儿客户端登录的时候要使用的。

3.
在客户端安装SSH Key,方便我们在客户端安全登录:

cd ~/.ssh

如果提示“没有那个文件或目录”,那么说明你以前没有生成过SSH Key,直接跳到第4步,否则保存从前的SSH Key:

ls
mkdir key_backup
cp id_rsa* key_backup
rm id_rsa

4.

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

注意:上面要填你注册的邮箱;
然后会询问保存key的位置,我们选择默认,一直enter就可以了

5.
登录githut,有一个Account Settings,点SSH public Key,然后打开第4步生成的id_rsa.pub文件,全部复制到key一栏,title可以随便取,点击Add Key;

6.
然后我们测试一下连接:

ssh -T git@github.com

第一次会有一个错误提示,不用管他,输入yes,之后如果顺利,应该会有“Hi 你的注册用户名! You've successfully authenticated, but GitHub does not provide shell access.”的提示,表示正确连接到了github

7.

git config --global user.name "你自己的名字,可以不是注册名"
git config --global user.email "你自己的邮箱,可以不是注册邮箱名"
git config --global github.user github的注册名
git config --global github.token XXX

注意:XXX通过如下方式获取:
登录github,有一个Account Settings,点击里面的“Account Admin“, 其中的API Token即是上述的XXX
至此,我们已经可以用github了,下面来创建一个Repository

8.打开 https://github.com/repositories/new,填上项目名,描述,主页等,点击“Create Reopsitory”,这时在我们的账户里就创建了一个Repository,但它是空的,下面我们往里加东西:

9.

mkdir XXX

(XXX是本地要和github同步的文件夹)

cd XXX
git init
touch README

(作为例子,我们把这里的README同步到上面的Repository里)

git and README
git commit -m 'XXXXXXXXx'

(XXX是你本次同步所添加的注释,方便日后追踪)

git remote add origin git@github.com:XXX/YYY.git

注意:XXX是你的github注册名,YYY是刚才创建的Repository名

git push origin master

完成之后,在你的Repository里就会有刚才check in的README了。

10.
更新文件

vi README

自动commit更改文件

git commit -a

更新至远程

git push origin master

11. 
创建和合并分支

git branch

显示当前分支是master

git branch new-feature

创建分支

git checkout new-feature

切换到新分支

vi page_cache.inc.php

git add page_cache.inc.php

Commit 到本地GIT

git commit -a -m "added initial version of page cache"

合并到远程服务器

git push origin new-feature

如果new-feature分支成熟了,觉得有必要合并进master

git checkout master
git merge new-feature
git branch
git push

则master中也合并了new-feature 的代码

再登录到GitHub可以看见"Switch Branches"下的分支选项:

在Linux系统下使用Github的基本教程的更多相关文章

  1. Linux系统下Dubbo安装的详细教程

    Linux系统下Dubbo安装的详细教程 1.Dubbo的简介 Dubbo是 [1]  阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 [ ...

  2. Linux系统下连接校园网Drcom客户端教程(广东工业大学)

    这篇教程写给想要学习Linux系统或者在Linux系统下有需要使用Drcom上网的同学,在我疯狂踩坑,经过n多次的刷机装机实验,体验不同发行版本的linux系统后,终于懂得怎么连接上drcom,想想连 ...

  3. Linux系统下安装Mysql5.7.18教程收集分享

    本人最近服务器新手入门,需要搭建一个在linux虚拟机上的服务器 第一天再装虚拟机,选的linux系统CentOS,一切顺利. 第二天,要给虚拟机装Mysql,但是需要用到命令行进行安装/操作等,我是 ...

  4. Linux系统下wget命令的使用教程

    一.Linux wget简介 wget是linux上的命令行的下载工具.这是一个GPL许可证下的自由软件.Linux wget支持HTTP和FTP协议,支持代理服务器和断点续传功能,能够自动递归远程主 ...

  5. Linux 系统下安装JDK1.8的教程详解

    一,安装前的清理工作 ? 1 2 3 rpm -qa | grep jdk rpm -qa | grep gcj yum -y remove java-xxx-xxx 二 , 在线下载JDK 命令: ...

  6. redis在windows和Linux系统下的下载、安装、配置

    1.下载redis安装包 在redis的官网只有Linux系统下的安装包,微软的GitHub上有提供windows版本的redis安装包 redis中文网:http://www.redis.cn/ 微 ...

  7. Linux系统下安装Gitlab

    Linux系统下安装Gitlab 一.简介 GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与 ...

  8. 在Linux系统下运行微信Web开发者工具

    微信Web开发者工具只有window版本和mac版本,如果想要在Linux系统下运行微信Web开发者工具,需要花费很大周折. 注:带 * 的步骤或文件为不确定是否管用的步骤或文件.本人系统为Linux ...

  9. Vi (Unix及Linux系统下标准的编辑器)VIM (Unix及类Unix系统文本编辑器)

    Vi是Unix及Linux系统下标准的编辑器.学会它后,您将在Linux的世界里畅行无阻.基本上vi可以分为三种状态,分别是命令模式.插入模式,和底行模式. vi编辑器是所有Unix及Linux系统下 ...

随机推荐

  1. SurvivalShooter学习笔记(七.玩家射击)

    玩家射击:(这个脚本放在玩家的空子物体上,这个位置为枪口位置) 点击鼠标,玩家射击: 射击枪口发光,射击通过射线,方向有激光效果:(关于射线不明白可以参考Unity射线相关) 射击有射击音效 射击有每 ...

  2. Android中使用OnClickListener接口实现button点击的低级失误

    今天写了几行极为简单的代码,就是想implements  View.OnCLickListener.然后实现按钮点击操作.可是按钮却没有反应.找了五分钟还是没有结果. 下面是我的代码,希望大家不要嘲笑 ...

  3. 联想打字必须按FN+数字-fn打字

    对于联想G40.14英寸系列的本本,好多时候无意间可能把数字键锁定了. 这时候要做的是:打开运行--输入OSK--打开虚拟屏幕键盘.这时候可以找到 选项---打开数字键盘. 有时候某些电脑上没有NUM ...

  4. HDU 5658 CA Loves Palindromic(回文树)

    CA Loves Palindromic Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/O ...

  5. POJ 2773 Happy 2006(容斥原理+二分)

    Happy 2006 Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 10827   Accepted: 3764 Descr ...

  6. Sublime text找不到.so文件

    在使用Sublime text打开一个android项目的时候,你会发现找不到.so文件. 解决方法: 点击Sublime text的Preferences,然后点击Settings,这时候出现设置的 ...

  7. php 代替 js实现自定义时间选择器

    w 0-php来结合服务端数据,处理前端页面的交互: 1-php 加法 乘法的效率对比,对算术运算的优化. 减少乘法运算? function w_select($wname, $wii) { $w = ...

  8. javascript变量声明提升和函数声明提升

    在ES6之前,JavaScript没有块级作用域(一对花括号{}即为一个块级作用域),只有全局作用域和函数作用域.变量提升即将变量声明提升到它所在作用域的最开始的部分. JS的解析过程分为两个阶段:预 ...

  9. JS-排序详解:冒泡排序、选择排序和快速排序

    JS-排序详解-冒泡排序 说明 时间复杂度指的是一个算法执行所耗费的时间 空间复杂度指运行完一个程序所需内存的大小 稳定指,如果a=b,a在b的前面,排序后a仍然在b的前面 不稳定指,如果a=b,a在 ...

  10. Andrew Ng机器学习编程作业:Regularized Linear Regression and Bias/Variance

    作业文件: machine-learning-ex5 1. 正则化线性回归 在本次练习的前半部分,我们将会正则化的线性回归模型来利用水库中水位的变化预测流出大坝的水量,后半部分我们对调试的学习算法进行 ...