转自:简书 一方天涯的 GitHub Desktop图文教程

学习本文之前首先了解两个概念,Git 和 Github。
Git是一款免费、开源的分布式版本控制系统,简单来说,就是一个管理你的「代码的历史记录」的工具。
Github是用Git做版本控制的代码托管平台,它提供了web界面,你可以在上面创建资源仓库来存放你的项目。
本文适合Git新手,帮助你学习Git图形化界面操作,快速上手然后进行工作。

1、注册Github账号

Step 1: https://github.com 注册地址 输入昵称,邮箱,密码注册

Step2: 选择你的私人计划(personal plan),即选择免费用户还是付费用户,免费用户只能创建开源仓库,也就是所有人都可以看你的项目。

Step3: 登录注册的邮箱,验证账号。

2、创建仓库

Step1: 创建仓库

Step2: 填写一些资料

Step3: Github上的项目页面(图片来源http://blog.csdn.net/android_zyf/article/details/64175941)

3、安装GitHub Desktop

下载地址:https://desktop.github.com/ 选择适合你的版本下载
安装好GitHub Desktop后,第一次运行时需要输入GitHub.com的用户名和密码

4、创建本地仓库

Step1: new Repository

Step2: 填写仓库名字、描述,选择存放地址

Step3: 在文件夹打开Step4: 添加自己到项目文件

Step5: 提交改动

5、提交改动到远端(Github.com)

成功之后,就可以在自己到Github 项目页面看到新提交到项目了。通过GitHub Desktop你已经能够把本地的项目文件跟远端(Github.com)上的项目关联起来。


Github.com 个人项目页

6、从远端拉取仓库

除了本地创建仓库推送到远端,我们也可以从远端拉取项目(Clone)
Step1: 进入自己的项目页面,复制项目地址

Step2 回到Github Desktop

Step3: 粘贴地址,Clone

7、本地提交和推送

成功从远端拉取项目之后,你可以使用自己喜欢的编辑器打开,编辑好文件之后,再提交改动到远端
Step1: 本地提交

此时提交仍然是属于本地的,如果需要提交到远端(Github.com)还需要进一步推送
Step2: 点击Push origin 就可以推送到远端

8、版本回滚

通过第7步,可以轻松的看到自己对项目的改动,哪怕只是改了一个空格,一个分号,都会有清晰的显示,再也不用害怕不小心改错地方了。
是不是非常的愉快,那如果改完之后又后悔了,有没有后悔药?
答案是,当然有,你可以轻松的回到任何的一次修改。
情况一,你还没提交代码,这时候最简单,只需要文件右键"Discard Changes" 放弃更改即可

情况二,你已经提交代码,操作也非常简单,右键选择"Revert This Commit" 恢复到当前提交

9、新增分支

创建和切换分支到操作很简单,关于分支到概念 请看 阮一峰的 Git分支管理策略
step1: New Branch

step2: 填写分支名字

10、合并分支

现在我在dev开发分支上做了添加了login.html,那么如何合并到master分支呢?
dev分支

首先,我们需要切换到Master分支,
Step1: 切换分支
Step2: 合并到当前分支

Step3:把dev的变化合并到master分支

此时,你会发现master分支上的提交历史已经有了“添加login”这个改动,这说明合并已经成功。

11、解决冲突

以上操作,一个人玩的时候溜溜的,很愉快,但实际工作中,经常是多人一起开发,这时候,两个人同时改了同一个地方,就会出现冲突的情况。
比如我在dev分支和master分支对同一个地方进行改动,
dev分支
master分支

在合并分支的时候就会出现冲突

这时候,点击关闭提示,再看 Changes, 冲突的文件已经列出来

冲突在GitHub Desktop的体现:

我们可以在编辑器中修改。

冲突在编辑器中的体现

必须注意的是,解决完冲突的代码不能有 **<<<<<<< HEAD ======= >>>>>>> dev** 这些标记
解决完冲突的代码

提交解决冲突后的合并

12、Fork 别人的项目

通过前面的步骤,日常的工作已经能轻松进行,但Github除了托管自己的项目,上面也汇集了大量优秀的开源项目,我们如何快速的克隆别人的项目?以Vux项目为例子:
vux 的项目页

Fork之后,我们已经克隆了一个作为自己的项目版本,可以进行任意的开发和学习
现在我们也有一个vux项目了

在做了一些创造性开发之后,你可以向原作者提交合并的申请,点击New pull request

合并的请求

这时候原作者就会收到一个合并请求,他可以通过审核你的提交,来决定需不需要合并。

小结:

以上主要是GitHub Desktop的简单使用教程,图形化的界面非常容易上手,很适合Git的新手快速学习和使用。
除了GitHub Desktop其实还有一款Git的客户端也非常好用,小编现在的工作团队也正在使用,操作跟GitHub Desktop大同小异,两者的易用性嘛,仁者见仁。
下面放一张主界面图片预览一下,SourceTree下载地址

更多关于Git的学习:
git - 简易指南
Git 图解剖析
常用 Git 命令清单-阮一峰
通过上面的学习,快去愉快的使用Git吧!

GitHub Desktop图文教程相关推荐

  1. github(desktop)使用教程(三) 【保姆级】{desktop tutorial repository,创建分支,编辑文件,保存修改,commit,publish to github}

    此篇详解如何用github desktop创建一个仓库 首先点击creat a tutorial(指导性的) repository  成功后的界面(这里我试过几次才成功,如果出现问题就仔细阅读错误提示 ...

  2. GitHub Desktop使用教程

    GitHub 客户端简介: GitHub Desktop是一个使用 git 分布式版本控制系统的.可以提交代码到站点下,或者下载站点上的代码的应用程序,集成了自包含版本的 Git,bash 命令行 s ...

  3. GitHub:GitHub简介、使用方法、经验总结(图文教程)之详细攻略(持续更新!)

    GitHub:GitHub简介.使用方法.经验总结(图文教程)之详细攻略(持续更新!) 目录 GitHub简介 1.GitHub发展历程 2.GitHub特点 3.GitHub六大基本功能 4.Git ...

  4. Docker学习之Windows Home上安装Docker Desktop的完整图文教程

    Windows Home上安装Docker Desktop的完整图文教程 记录安装过程,文字略显沙雕✧٩(ˊωˋ*)و✧ 来自Docker官方文档: 支持的平台 Docker Engine可 通过Do ...

  5. GitHub:如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细攻略(图文教程)

    GitHub:如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细攻略(图文教程) 目录 如何从GitHub上下载文件 1.下载整个项目文件 T1.点击download ZIP直接下 ...

  6. Github Desktop(Windows桌面版)简单教程

    简介 Github是世界上最大的开源及私有软件项目的托管平台.简单来说就是你可以的你的代码放在上面,然后别人可以下载你的代码,也可以参与你的代码的修改和完善. Github传统的使用方式是Git,用很 ...

  7. GitHub Desktop安装与使用教程

    文章目录 一.安装 1.下载 2.安装 二.新建仓库Repositories 1.本地仓库创建 1.打开创建仓库对话框,File-->New repositories 2.输入仓库名,设置本地路 ...

  8. github使用教程(二)【保姆级】{github desktop教程,github desktop的安装和配置}

    下载github desktop 下载github desktop(不选择Git,因为这个对于我这个初学者还有点复杂) 官方下载地址:GitHub Desktop | Simple collabora ...

  9. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程...

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

最新文章

  1. Spring Boot 结合 Redis 缓存
  2. arm linux下编译库System.Net.Primitives.dll和System.Xml.XmlSerializer.dll
  3. 海量日志数据分析与应用》场景介绍及技术点分析
  4. 定义一个类mymath_C++:模板类
  5. JAVA继承类phone_JAVA(9)继承与多态
  6. ms project 入门_Microsoft Project 2010入门
  7. CSDN博客投票活动开始了
  8. Python学习笔记:藉由私有属性实现封装
  9. linux设置环境变量_Linux怎么设置系统环境变量之export命令详解
  10. stm32单片机OLED取字模软件使用 PCtoLCD2002
  11. 一次redis集群连接数占满问题的排查
  12. @PropertySource注解获取配置文件值
  13. postman添加cookie_有了这款IDEA插件,再也不需要postman了
  14. 2021-06-06label标签 icon 图标设置
  15. 动易 当前服务器不允许上传文件,动易网站详细安说明及常见疑难解答.doc
  16. 英语esl语言课程等级105c,说一下英语ESL的等级
  17. mysql实时同步软件,MySQL实时同步到Oracle 详解MySQL实时同步到Oracle解决方案
  18. 数据结构--基本概念
  19. NLP中的attention机制总结
  20. fastjson解析多层对象中的属性

热门文章

  1. vue实现密码显示隐藏、很简单易懂
  2. web scraper翻页功能的实现
  3. C++数据结构算法(一)
  4. shell习题第15题:看数字找规律
  5. 广度优先搜索(BFS)最短路径输出表示(三种方法)
  6. 巾帼绽芬芳 一起向未来(中篇)
  7. iphone/ipad网站开发技巧整理
  8. 【SVAC】千目聚云:SVAC2.0已来 未来发展道路一片光明
  9. 【数据库】Redis
  10. 大数据分析:数字化企业转型的关键