【Git】Git GUI的使用

Git命令行一文中已经对Git的操做命令进行了简单的介绍,可是理论知识过于枯燥,使得初学者在Git的使用上仍是会有很大的困难。虽然我更推荐使用Git Bash方式对Git进行操做,可是对于大部分只是想简单地使用一下Git进行版本控制和团队开发的朋友而言,可能仍然更加钟情于可视化界面。因此本文对Git官方自带的可视化工具Git Gui的使用进行介绍,尽可能作到图文并茂,让全部初探Git的朋友都可以快速入门,使用Git进行项目开发。html

1.在本地新建版本库

首先,咱们打开Git GUI是这样的一个界面,选择第一项,新建版本库。
git

而后选择你须要进行版本管理的项目路径,我选择了一个LoginDemo的项目。
github

当你建立了版本库的时候,你能够在该项目的路径下看见多了一个.git文件夹(设置了隐藏文件不可见的话看不见)
缓存

在Git Gui中,若是Unstaged Changes(未缓存的改动)中包含文件,则先点击Stage Changed(stage,暂存区),将未缓存的改动加入缓存,再点击Commit;不然须要先点击Rescan扫描项目中进行过改动的文件。注:提交描述必需要填写,否则没法提交。
安全

提交成功后,咱们能够在Repository->Visualize All Branches History中看到咱们提交的历史记录(这是提交到本地而不是提交到远程服务器)。至此,本地版本库就建立成功了。
服务器

2.将项目提交到远程

上一步已经使用Git在本地创建起了版本库,而后咱们须要将该项目提交到远程服务器以便同事或其余合做者共同参与开发。通常的开源项目使用github做为远程服务器。其实在本地简历版本库后,只须要点击push就能够直接上传。可是咱们尚未将本地的Git与github创建联系以及设置安全协议。ssh

首先,咱们须要在有一个本身的github账户,而后在github上新建一个repository,名字也叫作LoginDemo(能够和本地项目名不同)。
工具

在Git Gui中,选择Remote->add添加远程服务器,远程服务器信息有两种填写方式,填写https地址或ssh地址,对应github项目的https和ssh地址,推荐使用ssh方式。fetch

1.https地址

这种方式须要输入你的github账户和密码,意味着经过这种方式你只可以操做本身的项目。
ui

2.ssh地址

这种方式须要进行受权设置,在Git Gui的菜单栏,点击Help->Show SSH key->Generate SSH KEY建立密钥。

而后在github的Personal settings中添加它,title随意,能够用Home,company等做为标识来区别。

添加远程服务器信息。

接下来,咱们即可以直接在Git Gui点击push提交至远程客户端,刷新一下github,即可以看到项目已经在repository中了。

3.从远程下载更新

设想多人参与项目开发,每一个人都只push到远程,彻底不顾其余成员的进度,这样的开发模式无疑是有问题的。咱们最好的作法是,每次push到远程的时候,先从远程把目前进度fetch下来,在和本身目前项目进度merge后,再将它push到远程。打开Git Gui,在菜单栏中选择Remote->Fetch from->LoginTest,即可以从远程服务器更新到本地,可是还没有与本身当前项目合并。

4.合并解决冲突

从远程fetch后,选择Git Gui的Merge->Local Merge进行合并,选择Tracking Branch。

若是本地有一个方法名叫findUser,而远程服务器中该方法的名字改变了,例如变成了findPassword,则合并遇到冲突,能够右键空白部分选择保留本地版本或远程版本进行合并(图中绿色的代码表示冲突部分)。

5.克隆github上的项目到本地

在Git Gui的主界面选择克隆已有版本库。

Source Location即github中项目的地址,和第二部分(将项目提交到远程)中同样,能够选择https地址或ssh地址,Target Directory是在本地存放该项目的路径。点击Clone,成功从github将项目克隆到本地。

本文参考:http://www.noobyard.com/article/p-txhcxlsl-ca.html