git图文工具_【Git视图工具】GitHub Desktop图文教程

首先需要清楚 Git 和 Github 是两个东西。Git 是一款免费、开源的分布式版本控制系统,其实就是一个管理你的「代码的历史记录」的工具。

Github 是用 Git 做版本控制的代码托管平台,它提供了web界面,你可以在上面创建资源仓库来存放你的项目。本文能够帮助你学习Git图形化界面操作,快速上手然后进行工作。

#### 1、注册Github账号

GitHub官网:https://github.com 输入昵称,邮箱,密码注册GitHub账号。

![输入昵称,邮箱,密码注册](/uploads/content/5cbfc0bec192e.png "输入昵称,邮箱,密码注册")

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

#### 2、创建仓库

![创建仓库](/uploads/content/5cbfc18442596.png "创建仓库")

下一步

![下一步](/uploads/content/5cbfc1b1d0d89.png "下一步")

Github上的项目页面

![Github上的项目页面](/uploads/content/5cbfc1efd6cbc.png "Github上的项目页面")

#### 3、安装GitHub Desktop

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

![安装好GitHub Desktop后,第一次运行时需要输入GitHub.com的用户名和密码](/uploads/content/5cbfc2675bbc9.png "安装好GitHub Desktop后,第一次运行时需要输入GitHub.com的用户名和密码")

#### 4、创建本地仓库

1、new Repository

![创建本地仓库](/uploads/content/5cbfc29bcc4a4.png "创建本地仓库")

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

![填写仓库名字、描述,选择存放地址](/uploads/content/5cbfc2c85e9b2.png "填写仓库名字、描述,选择存放地址")

3、在文件夹打开

![在文件夹打开](/uploads/content/5cbfc2fdc0641.png "在文件夹打开")

4、添加自己到项目文件

![添加自己到项目文件](/uploads/content/5cbfc318bcdc7.png "添加自己到项目文件")

5、提交改动

![提交改动](/uploads/content/5cbfc33bdb71b.png "提交改动")

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

推送到本地到仓库到远端

![推送到本地到仓库到远端](/uploads/content/5cbfc35fd2325.png "推送到本地到仓库到远端")

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

#### 6、从远端拉取仓库

除了本地创建仓库推送到远端,我们也可以从远端拉取项目(Clone)

1、复制项目地址

![除了本地创建仓库推送到远端,我们也可以从远端拉取项目(Clone)](/uploads/content/5cbfc3baa2ca8.png "除了本地创建仓库推送到远端,我们也可以从远端拉取项目(Clone)")

2、回到Github Desktop

![复制项目地址](/uploads/content/5cbfc3da908d4.png "复制项目地址")

3、粘贴地址,Clone

![回到Github Desktop](/uploads/content/5cbfc42c43a58.png "回到Github Desktop")

#### 7、本地提交和推送

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

1、本地提交

![本地提交](/uploads/content/5cbfc4757b71a.png "本地提交")

此时提交仍然是属于本地的,如果需要提交到远端(Github.com)还需要进一步推送

2、点击Push origin 就可以推送到远端

![点击Push origin 就可以推送到远端](/uploads/content/5cbfc49a049c0.png "点击Push origin 就可以推送到远端")

#### 8、版本回滚

通过第7步,可以轻松的看到自己对项目的改动,哪怕只是改了一个空格,一个分号,都会有清晰的显示,再也不用害怕不小心改错地方了。

是不是非常的愉快,那如果改完之后又后悔了,有没有后悔药?答案是,当然有,你可以轻松的回到任何的一次修改。

情况一,你还没提交代码,这时候最简单,只需要文件右键"Discard Changes" 放弃更改即可

![Discard Changes](/uploads/content/5cbfc55ebf0f6.jpg "Discard Changes")

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

![Revert This Commit](/uploads/content/5cbfc5a5cbc9c.jpg "Revert This Commit")

#### 9、新增分支

创建和切换分支到操作很简单,关于分支到概念 请看 [阮一峰的 Git分支管理策略](http://www.ruanyifeng.com/blog/2012/07/git.html "阮一峰的 Git分支管理策略")

![New Branch](/uploads/content/5cbfc64b53ea5.jpg "New Branch")

填写分支名称即可

#### 10、合并分支

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

![合并分支](/uploads/content/5cbfc6c0763a2.jpg "合并分支")

首先,我们需要切换到Master分支

![首先,我们需要切换到Master分支,](/uploads/content/5cbfc6ffaca1d.jpg "首先,我们需要切换到Master分支,")

合并到当前分支

![首先,我们需要切换到Master分支,](/uploads/content/5cbfc72dbf95b.jpg "首先,我们需要切换到Master分支,")

把dev的变化合并到master分支

![把dev的变化合并到master分支](/uploads/content/5cbfc778247ca.jpg "把dev的变化合并到master分支")

#### 11、解决冲突

以上操作,一个人玩的时候溜溜的,很愉快,但实际工作中,经常是多人一起开发,这时候,两个人同时改了同一个地方,就会出现冲突的情况。

比如我在dev分支和master分支对同一个地方进行改动。

![解决冲突](/uploads/content/5cbfc7bdaf365.jpg "解决冲突")

master分支

![master分支](/uploads/content/5cbfc7ef83307.jpg "master分支")

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

![在合并分支的时候就会出现冲突](/uploads/content/5cbfc83a35628.jpg "在合并分支的时候就会出现冲突")

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

![冲突在GitHub Desktop的体现](/uploads/content/5cbfc87ba599b.jpg "冲突在GitHub Desktop的体现")

我们可以在编辑器中修改

![我们可以在编辑器中修改](/uploads/content/5cbfc8cc30df7.jpg "我们可以在编辑器中修改")

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

解决完冲突的代码

![解决完冲突的代码](/uploads/content/5cbfc90b76368.jpg "解决完冲突的代码")

提交解决冲突后的合并

![提交解决冲突后的合并](/uploads/content/5cbfc9409de85.jpg "提交解决冲突后的合并")

#### 12、Fork 别人的项目

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

以Vux项目为例子:

![项目页](/uploads/content/5cbfc996c5e7a.jpg "项目页")

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

![现在我们也有一个vux项目了](/uploads/content/5cbfc9cc3bb5e.jpg "现在我们也有一个vux项目了")

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

![点击New pull request](/uploads/content/5cbfc9ff9f307.jpg "点击New pull request")

合并的请求

![合并的请求](/uploads/content/5cbfca2fd0dcd.jpg "合并的请求")

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值