Git 是一款开源的分布式版本控制系统,而 GitHub 是依托 Git 的代码托管平台。

GitHub 利用 Git 极其强大的克隆和分支功能,使得社区成员能够自由地参与到开源项目中去。

不过,在开始学习之前,你需要一个 GitHub 账号,以及一台能联网的 Linux 虚拟机

=================准备工作==================

一、安装 Git

  * 如果你已经安装好了 Git,可以忽略这一步

  Ubuntu 安装 Git:  apt-get install git

  CentOS 安装 Git:  yum install git

  查看 Git 版本信息:  git version

  配置 Git 用户信息:

 git config --global user.name "woider"
git config --global user.email "woider@gmail.com"

↑ 把用户名和邮箱换成你自己的,键入命令后屏幕没有输出,则表示设置成功了

二、开启 SSH 服务

  * 如果你使用的是 CentOS,则默认开启了 SSH,可以忽略这一步

  Ubuntu 安装 SSH:  apt-get install ssh

  查看 SSH 服务状态:  ps -e | grep sshd

↑ sshd 表示 ssh-server 已启动

三、生成 SSH KEY

  * 使用 ls -al ~/.ssh 命令查看 ssh key 是否存在,若存在则忽略这一步

  生成 SSH KEY:  ssh-keygen -t rsa -C "woider@gmail.com"

↑ 生成 ssh key 过程中,会让你填写 passphrase,连按三次回车跳过即可

================SSH KEY===================

一、查看 SSH KEY

  进入 /root/.ssh 目录,查看 id_rsa 和 id_rsa.pub 文件:

 root@localhost:~# cd /root/.ssh
root@localhost:~/.ssh# ls -a

↑ id_rsa 为私钥,id_rsa.pub 为公钥

二、复制 SSH KEY

  打开 id_rsa.pub 文件,将内容复制到剪贴板:  vim id_rsa.pub

↑ SSH KEY 公钥,用于 GitHub 身份验证

三、添加 SSH KEY

  登录 GitHub,打开 Personal settings 页面,选择 SSH and GPG keys 选项:

↑ Title 可以随意填写,Key 中填写刚从 id_rsa.pub 中拷贝的内容

添加 SSH key 之后,Linux 就可以通过 SSH 建立本地 Git 与 GitHub 的连接了。

================GitHub===================

一、创建GitHub仓库

↑ 创建一个名为 baidu 的仓库

↑ SSH 地址为 git@github.com:woider/baidu.git

二、克隆仓库到本地

  通过 SSH 地址将 GitHub 仓库克隆到本地:

 git clone git@github.com:woider/baidu.git 

↑ 第一次连接时,需要你确认 GitHub 的 Key 的指纹信息是否真的来自 GitHub 的服务器。

  克隆到本地的仓库会自动关联远程仓库,可以通过  git remote -v  命令查看关联状态:

↑ 关联后可以通过  git push origin master  命令推送修改

注意:如果克隆的是其他人的仓库,由于没有权限,你将不能推送修改。

/* 创建一个 readme.md 文件 */
root@localhost:/home/baidu# vim readme.md /* 输出 readme.md 文件内容 */
root@localhost:/home/baidu# cat readme.md
Git关联GitHub
============= /* 将文件添加到暂存区 */
root@localhost:/home/baidu# git add readme.md /* 提交本次修改 */
root@localhost:/home/baidu# git commit -m "add readme file"
[master 228d321] add readme file
file changed, insertions(+)
create mode readme.md /* 推送到远程仓库 */
root@localhost:/home/baidu# git push origin master
Counting objects: , done.
Compressing objects: % (/), done.
Writing objects: % (/), bytes | bytes/s, done.
Total (delta ), reused (delta )
To git@github.com:woider/baidu.git
36c5c1c..228d321 master -> master root@localhost:/home/baidu#

Linux 下建立 Git 与 GitHub 的连接的更多相关文章

  1. ***Linux下使用git命令及github项目

    在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen  ##一直默认就可以了 3.将公钥加入到Github账户 ...

  2. 环境部署(三):Linux下安装Git

    Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具. 这篇博客,介绍下Linux下安装Git的步骤,仅供参考,当然,还是yum安装 ...

  3. 【转】在Linux下搭建Git服务器

    在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows. ...

  4. 在linux下有没有什么软件可以连接windows上的MSSQL SERVER

    在linux下有没有什么软件可以连接windows上的MSSQL SERVER GUI的http://dbeaver.jkiss.org/ http://bbs.csdn.net/topics/391 ...

  5. Linux下Jenkins+git+gradle持续集成环境搭建

    Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集  发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文   一.项目介绍 和 linux ...

  6. Linux下建立Nexus私服

    Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...

  7. linux下git以及github的连接与使用

    简单理解 Git 的思想和基本的工作原理,能够更好的进一步和使用Git.在开始学习Git 的时候,最好不要把Git的各种概念和其他的版本控制系统诸如 Subversion 等相比,否则容易混淆每个操作 ...

  8. windows下使用git和github建立远程仓库

    转自(http://www.bubuko.com/infodetail-430228.html) 从昨天开始就在看git的使用,因为在Windows下很多命令行操作都比较坑爹,但是今天再走了无数弯路之 ...

  9. Windows下使用Git和GitHub.com

    1.首先介绍一下什么是Git和GitHub       Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.在推出后,Git在其它项目中也取得了很大 ...

随机推荐

  1. web服务器tomcat入门实战

    一.tomcat介绍1.1 引入tomcat Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Su ...

  2. Ext需要的文件目录

    使用ext版本信息:ext-4.1.1a <!-- 下面是引入文件需要导入的文件信息 ext-all.css ext-all.js --><link rel="styles ...

  3. 转载:《RESTful API 设计指南》 阮一峰

    原文:http://www.ruanyifeng.com/blog/2014/05/restful_api 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面 ...

  4. 常用的Unicode值范围

    汉字:[0x4e00,0x9fa5](或十进制[19968,40869])数字:[0x30,0x39](或十进制[48, 57])小写字母:[0x61,0x7a](或十进制[97, 122])大写字母 ...

  5. Android 动画:你真的会使用插值器与估值器吗?

    目录   目录 1. 插值器(Interpolator) 1.1 简介 定义:一个接口 作用:设置 属性值 从初始值过渡到结束值 的变化规律 如匀速.加速 & 减速 等等 即确定了 动画效果变 ...

  6. 前景检测(1):VIBE

    参考:http://blog.csdn.net/zouxy09/article/details/9622285 看论文很多细节不明白,看这位博主实现的代码就能明白了.

  7. python之类中的super函数

    作用 实现代码重用 思考:super真的只是调用父类么? super函数是按照mro算法去调用的,不bb上代码: class A: def __init__(self): print('A') cla ...

  8. 父窗口中获取iframe中的元素

    js 在父窗口中获取iframe中的元素 1. 格式:window.frames["iframe的name值"].document.getElementById("ifr ...

  9. poj3061 poj3320 poj2566尺取法基础(一)

    poj3061 给定一个序列找出最短的子序列长度,使得其和大于等于S 那么只要用两个下标,区间和小于S时右端点向右移动,区间和大于S时左端点向右移动,在这个过程中更新Min #include < ...

  10. python接口自动化测试八:更新Cookies、session保持会话

    s = requests.session() # 此方法只适用于网站是cookies这种,网站是token的没用 # 这样做的好处就是可以保存cookies并保持会话,不用每次都去获取.传参 Toke ...