【GitHub Desktop】MacOS和Win下配置及简单的使用
一. GitHub介绍
1.GitHub 是为开发者提供 Git 仓库的托管服务。这是一个让开发者与朋友、同事、同学及陌生人共享代码的完美场所。
总结一下,GitHub 最大的特征是“面向人”
2.GitHub 与 Git 的区别
在 Git 中,开发者将源代码存入名叫“Git 仓库”的资料库中并加以使用。
而 GitHub 则是在网络上提供 Git 仓库的一项服务。也就是说,GitHub 上公开的软件源代码全都由 Git 进行管理。

(图片来源GitHub 是怎样的一个存在? - Deep Reader 的回答)
二.什么是版本控制
版本管理系统分为 Subversion 这类集中型的与 Git 这类分散型的,下面就为各位简单说明一下二者的不同点。
————集中型————
以 Subversion 为代表的集中型,会如图 2.1 所示将仓库集中存放在服务器之中,所以只存在一个仓库。这就是为什么这种版本管理系统会被称作集中型。集中型将所有数据集中存放在服务器当中,有便于管理的优点。但是一旦开发者所处的环境不能连接服务器,无法获取最新的源代码,开发也就几乎无法进行。服务器宕机时也是同样的道理,而且万一服务器故障导致数据消失,恐怕开发者就再也见不到最新的源代码了。

————分散型————
以 Git 为代表的分散型的示意图。如图中所示, GitHub 将仓库 Fork 给了每一个用户。 Fork 就是将 GitHub 的某个特定仓库复制到自己的账户下。 Fork 出的仓库与原仓库是两个不同的仓库,开发者可以随意编辑。
如图所示,分散型拥有多个仓库,相对而言稍显复杂。不过,由于本地的开发环境中就有仓库,所以开发者不必连接远程仓库就可以进行开发。
图中只显示了一般的使用流程。实际上,所有仓库之间都可以进行push 和 pull。即便不通过 GitHub,开发者 A 也可以直接向开发者 B 的仓库进行 push 或 pull。因此在使用前如果不事先制定规范,初学者可能会搞不清最新的源代码保存在哪里,导致开发失去控制。

三.GitHub Desktop客户端安装
想要享受GitHub的服务,除了网页上进行操作,也提供了专门的桌面客户端。
1.Win下
首先到官网下载Github客户端,官网地址:https://desktop.github.com/

下下来之后,是这样的,然后点击在线安装,出现个框,然后就是等了



安装好之后桌面上应该就有个github的图标了。点击可打开。
因为我下的特别慢,所以就装了个免安装版本。
百度云GitHub Desktop for Win链接:http://pan.baidu.com/s/1hrPKEO0 密码:wt0d
2.Mac OS下。
首先到官网下载Github客户端,官网地址:https://desktop.github.com/
下载之后解压,安装

他会提示你是否要移动到应用程序的文件夹。点是就行了 。

四.GitHub Desktop的使用
1.点击进入软件,登录自己的github帐号。创建本地文件夹,可以看到上面有3个,分别是Add:添加一个仓库路径;Creat:创建一个仓库路径;Clone:克隆一个已经存在的仓库。

2.从在Github网站上下载之前创建的工程

3.下图可以看出,这个分支,之前有2个版本。这个down到本地的版本0 changes。

4.点击Master主干上的时间节点,可以查看以前版本修改的内容。

5.把需要上传的代码放到配置的本地文件夹下面,就会提示有新的修改,给修改加上版本说明点击,commit to master可以提交到主干上。

6.可以看到主干上多了一个时间节点。网站上的的Hello World仓库也可以看到新上传上去的代码了。

7.当我需要在win上get之前在Mac上的代码时候,点击右上角Sync,更新下Github仓库中代码到本地。

补充:如果点击了Sync,然后过了好久遇到了一个Github for windows 同步失败问题 "Github failed to sync this branch "失败
然后上网招了下解决方案。可以在Git shell里面用命令行来拉取代码。
git pull 拉取
git push 提交


【GitHub Desktop】MacOS和Win下配置及简单的使用的更多相关文章
- 记录下WIN下配置LINUX虚拟机及PYTHON环境
因为听说服务器端大多都是LINUX/UNIX,LINUX是程序员必须适应的编程环境,所以今天折腾了一下,给笔记本装了个LINUX虚拟机,并顺便给WINDOWS和LINUX都配置了PYTHON环境. 这 ...
- win下配置qt creator 能够执行c/c++
首先需要相关包共四个: qt-win-opensource-4.8.5-mingw.exe qt-creator-windows-opensource-2.8.1.exe MinGW-gcc440_1 ...
- win下配置java环境变量
系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(本人是 E:\Java\jdk1.7.0) 系统变量→寻找 Path 变量→编辑 在变量值最后输入 %JAVA_HOME%\ ...
- Mac下GitHub以及GitHub Desktop使用实战
Hub是一个面向开源及私有软件项目的托管平台.开源代码库以及版本控制系统,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.通常在Windows下使用GitHub的教程是非常多的, ...
- macOS 下配置 MAMP 开发环境(Mac + Apache + Mysql + PHP)
macOS 中已经内置了 PHP.Python.Ruby.Perl 等常用的脚本语言,以及 Apache HTTP 服务器,所以使用起来非常方便.本文以最新的 macOS Sierra 10.12 配 ...
- Windows下配置Git多账号github码云
Windows下配置Git多账号github码云 1.配置了全局用户名和邮箱 $ git config --global user.email "你的邮箱" $ git confi ...
- window下配置SSH连接GitHub、GitHub配置ssh key
window下配置SSH连接GitHub.GitHub配置ssh key 此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...
- 如何在Mac下配置Github和Bitbucket的SSH
--- title: 如何在Mac下配置Github和Bitbucket的SSH date: 2017-12-23 21:10:30 tags: - Mac - Git - Github catego ...
- win下jdk7环境变量的配置
win下jdk7环境变量的配置: 单击计算机(Computer),选择属性(Properties),选择高级系统设置(Advanced systems settings), 选择环境变量(Enviro ...
随机推荐
- python 小程序 复制目录树
1. 将一个目录树完全复制到另外一个目录下面 import os, sys """ 复制目录树 """ maxloadsize = 1024 ...
- [LeetCode] Edit Distance 编辑距离
Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2 ...
- Windows10下安装OpenSSL
Windows10下安装的方法 安装环境:Windows10专业版+VS2013 工具:ActivePerl-5.22.1.2201-MSWin32-x64-299574.msi,下载地址:http: ...
- Stream与byte[]与Image与string
public byte[] GetByteImage(Image img) { byte[] bt = null; if (!img.Equals(null)) { using (MemoryStre ...
- .net的一致性哈希实现
最近在项目的微服务架构推进过程中,一个新的服务需要动态伸缩的弹性部署,所有容器化示例组成一个大的工作集群,以分布式处理的方式来完成一项工作,在集群中所有节点的任务分配过程中,由于集群工作节点需要动态增 ...
- UIDynamic--动力元素行为:UIDynamicItemBehavior
属性分析: @property (nonatomic, readonly, copy) NSArray* items; @property (readwrite, nonatomic) CGFloat ...
- ORB-SLAM(五)优化
ORB-SLAM作为单目SLAM,其精度很大程度上决定于帧与帧之间的位姿优化的是否准确.因此优化(optimization)在ORB-SLAM里面扮演了很重要的角色.这一小节探讨一下ORB-SLAM里 ...
- php对应js math.random
<?php function random($min = 0, $max = 1) { return $min + mt_rand()/mt_getrandmax()*($max-$mi ...
- ajax的简单介绍
响应主体,就是服务器给我们返回的结果内容(浏览器里的responsive) 请求主体,是我们给服务器的数据 输入域名发起一次请求,得到的可能是标签,标签可能还要在发一次请求 post怎么发请求:for ...
- PHP进程通信基础——信号量+共享内存通信
PHP进程通信基础--信号量+共享内存通信 由于进程之间谁先执行并不确定,这取决于内核的进程调度算法,其中比较复杂.由此有可能多进程在相同的时间内同时访问共享内存,从而造成不可预料的错误.信号量这个名 ...