在Mac上配置/使用Github
原文链接:http://www.jianshu.com/p/20eee155bbee
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
先简单介绍一下Git和Github,以下文字来源于维基百科。
Git是用于Linux内核开发的版本控制工具。与常用的版本控制工具CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge tracing)能力。
GitHub是一个用于使用Git版本控制系统的项目的基于互联网的存取服务。它是由GitHub公司(先前被称作用Logical Awesome)的开发者Chris Wanstrath, PJ Hyett, 和 Tom Preston-Werner 使用Ruby on Rails写成的。GitHub同时提供商业账户和为开源项目提供的免费账户。根据在2009年的Git用户调查,GitHub是最流行的Git存取站点。
它提供了像 feeds,followers 和显示开发者们怎样在他们的版本库的版本上工作的网络图表。
使用GitHub能够帮助我们做好项目开发中的版本控制工作,更棒的是,它可以免费使用!
以下流程在从网络及实践中总结写成:
1.下载,安装Git,注册GitHub:
从google code上可以获的Mac OS的dmg安装文件
下载地址:http://git-osx-installer.googlecode.com/files/git-1.7.12-intel-universal-snow-leopard.dmg
安装没有什么好说的,打开.dmg文件,然后运行.pkg文件,一步一步往后装即可。git 会被安装到/usr/local/git/bin目录下。
注册GitHub同样非常简单,选择免费的开源账户类型,按部就班走流程即可。
2.配置Git
在终端进入.ssh目录,如果目录中有文件,备份一份然后获取密钥:
$ cd ~/.ssh
$ ls //如果目录下已有文件,建立一个备份文件夹,把原有文件备份进去
$ ssh-keygen -t rsa -C "你的邮箱@xxx.com" //之后一路回车即可
然后在该目录下会有一个id_rsa.pub文件,文件里就是刚才生成的密钥,用vim等编辑器打开并复制内容。
进入GitHub里右上角的Account Setting

之后,SSH Keys ->Add SSH key ,在Key栏中粘贴上刚才拷贝的密钥内容。

完成后再返回终端,运行:
$ ssh -T git@github.com
之后出现的显示都填yes即可,出现:
HiXXX! You"ve successfully authenticated, but GitHub does not provide shell access.
即为连接成功。
如果连接失败,有可能是默认的22端口被封了,可以在.ssh目录下新建一个名为config(没有后缀名)的文件,内容如下:
Host github.com
User XXX@XXX.com
Port 443
Hostname ssh.github.com
之后要设置用户信息
$ git config --global user.name "XXXX" //自己随便起个名字
$ git config --global user.email "XXX@XXX.com"
至此,GitHub的配置工作完成。
3.终端及GitHub图形化界面下的使用
GitHub图形化界面的使用
一. 建立GitHub Repository并修改提交代码
访问github.com并登陆,在页面的右下角有你当前的Repository信息,点击New Repository创建一个新的

在下一个页面填写好Repository的名称和描述,创建一个README文件(这样一会可以直接执行clone操作)
创建完成之后,左上角 Clone in Mac,在你本机的GitHub中就会出现clone选项,名称和地址,执行clone操作,在本地选择的地址下就会有一个clone的副本文件夹出现。
在本地随意编辑README文件,保存后就会看到GitHub里已经检测到改变的发生,这时我们可以执行commit操作,Commit&Sync 将改动提交到网上。

刷新GitHub网站的页面,可以看到改动已经被提交。
二. 代码回滚
在代码编写的过程中,遇到错误的修改导致代码损坏的情况很常见,有GitHub的版本管理,可以通过代码回滚将原有的代码恢复。
在GitHub图形界面里的History界面里我们能看到我们做过的所有的改动提交,代码回滚等操作,点开一个提交操作

可以看到,有两个操作,Revert commit 和 Roll back to this commit ,其中Roll back to this commit 就是将本地代码回滚到这次提交之后的状态,Revert commit则是把这次提交的修改全部回滚,但是如果在这次提交之后又有提交就会产生冲突的情况,这个后面说。
注意,上面的修改都是针对本地代码的,只要不commit对线上代码是没有影响的。
在Mac上配置/使用Github的更多相关文章
- 【GitHub】在Mac上配置/使用Github
以前一直听说过Github,但是自己一直不会用.最近不是太忙,于是想捣鼓捣鼓Github,没想到用了将近3个小时,才在Mac上配置成功. 首先简单介绍一下Git和Github 集中化的版本控制系统( ...
- Mac上基于hexo+GitHub搭建个人博客(一)
原文地址: http://fanjiajia.cn/2018/11/23/Mac%E4%B8%8A%E5%9F%BA%E4%BA%8Ehexo+GitHub%E6%90%AD%E5%BB%BA%E4% ...
- mac 上配置flutter开发环境
(ios,Android,Xcode,Android Studio,VScode,IDEA) 1)安装Flutter SDK 2)iOS 环境配置 3)Android Studio配置 4)VS co ...
- 在Mac上配置adb命令
在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...
- Mac上配置GTK环境
Mac上配置GTK环境 安装command line工具, 如果安装了Xcode, 就直接跳过该步骤 安装Homebrew 使用brew install pkg-config 使用brew insta ...
- mac上配置php开发环境
玉忠之前在我的mac上配置过,当时项目不能区分大小写,所以就没成功,我现在在他得基础上继续配置,希望成功. 教程:http://my.oschina.net/joanfen/blog/171109 以 ...
- Delphi for iOS开发指南(1):在Mac上配置你的开发环境
http://cache.baiducontent.com/c?m=9d78d513d99516f11ab7cf690d678c3b584380122ba7a0020fd18438e4732b4050 ...
- Mac上配置不同版本的JDK
Mac上JDK的版本为1.8,编译AOSP时发现需要JDK 1.7.想找一种比较容易切换JDK版本的方式,经过一番Google发现Jenv比较合适. 安装Jenv至少有三种方式: - $ git cl ...
- Mac上配置 Ruby on Rails和Git
Ruby on Rails on Mac =============================================================================== ...
随机推荐
- JavaSE复习日记 : 算是个小前言吧
/* * Java也学了好久了,抽个时间整理了一下课堂笔记,也有些是我刚开始学会犯的一些错误.在这里浅谈一下JavaSE的基础内容,对我来说也是一种不错的复习方式. * * 那好,对于初学者来说,学习 ...
- [Swust OJ 582]--放学了,抢机子了(SPFA)
题目链接:http://acm.swust.edu.cn/problem/0582/ Time limit(ms): 5000 Memory limit(kb): 65535 Descriptio ...
- C程序的存储空间布局
历史沿袭至今,C程序一直由下列几部分组成: 1. 正文段.这是由CPU执行的机器指令部分.通常,正文段是可共享的,所以即使是频繁执行的程序(编辑器,编译器,命令解释器)在存储器中也只需一个副本,另外正 ...
- XHTML CSS 常见问题和解决方案
原文地址:XHTML CSS 常见问题和解决方案 作为前端开发人员,在日常的页面制作时,不可避免的会碰上这样那样的问题,我挑选了其中的一些进行总结归档,希望对大家会有所帮助: 1.如何定义高度很小的容 ...
- 怪兽z主机 驱动集
这里给买家朋友送上我们主机的驱动包. 1.主板驱动. 访问密码 f334 http://yunpan.cn/QNTGxehcnLBW5 2.AMD显卡催化剂 amd catalyst(没装的话,无法 ...
- jQuery EasyUI 数字框(NumberBox)用法
这里的options是选项,可以参考下表: 选项名 类型 描述 默认值 min 数字 文本框中可允许的最小值 null max 数字 文本框中可允许的最大值 null precision 数字 最高可 ...
- android TDD平台插入双卡时,查看允许返回发送报告的选项,去掉勾选,不起作用
请在MultiSimPreferenceActivity.java 下修改 修改1: 函数 isChecked() private boolean isChecked(String prefe ...
- java 解析国密SM2算法证书
首先说明用Java自带的解析x509证书类,是不能解析sm2算法的证书,执行会抛出异常. 用开源库bouncycastle能够解析.详细代码 private byte[] getCSPK(byte[] ...
- 用javap命令反编译来分析字符串问题
编写Test.java.编译完后生成Test.class文件,然后对该文件运行javap -c Test命令,生成字节码指令.阅读并得出结论 一.s1和s2指向常量池的不同常量 ①java代码 pub ...
- Android开发中内置apk程序
首先申明,这里的方法介绍是针对我司自己项目中的具体开发板而做的. Mg701内置APK有三种方式 一. 这种方法必须要自己编写Android.mk文件(关于Android.mk可以参考 ...