(转载)在Visual Studio 2015中使用Git

原文:http://blog.csdn.net/damon316/article/details/51885802

1. VS2015在对Git的支持

VS2015是微软IDE集成开发环境的重量级升级,微软除了将触角延伸至iOSAndroid平台以及Unity,Unreal和Cocos等游戏开发领域中。而且在进一步集成Git。

可以说在不需要第三方插件的前提下,就可以使用Git来进行团队开发。

2. 在VS2015中使用Git

下面介绍如何在VS2015中使用Git进行团队开发。

2.1 在Git服务器上新建版本库

在使用VS2015进行团队开发前,我们先在Git服务器上创建新的版本库。

打开我们已经安装好的GitStack(如查直接看本篇的同学,可以先看一下服务端环境搭建一文URL:使用GitStack+TortoiseGit 图形界面搭建Git环境)

在GitStack中创建新的版本库,名为“MyGitForVsObject”,并新建两个用户"yubinfeng"和“zhangsan”,再新建一个组"MyGitGroup",将这两个用户加入到该组,并给版本库授权该组。具体操作这里不再赘述,不了解的朋友请看上面的URL.

完成后如下所示:

2.2 在VS2015中克隆远程版本库

我们先在VS2015中新建一个解决方案,在工具栏,点“团队”=》“管理连接”

按上图所示,右打开的 团队资源管理器中,输入远程Git URL,点击克隆按钮,即可完成在VS2015中克隆远程版本库了

 克隆成功后,可以在 本地Git存储库 中看到 本地版本库已经 从服务器上克隆下来了。

2.3  Git全局设置

完成版本库克隆后,我们需要在Git中进行一次全局设置。

工具栏 - 团队 - 管理连接,打开团队资源管理器

点击主页按钮,如下图

 

 

点击设置,选择全局设置,完成如下三项更改,点更新

用户名:将作为你以后版本提交后日志显示的名称

电子邮件:团队联系使用

默认存储库位置:最好进行一下改动,默认在C盘,防止丢失

2.4  Git存储库设置

存储库设置和全局设置类同,如下

工具栏 - 团队 - 管理连接,打开团队资源管理器

点击主页按钮,选择 设置 - 存储库设置

如上图,其他内容不需要设置,主要 添加一下远程 。这将是以后获取新版本和推送到服务器的地址

此时,我们可以看到项目文件前面有一个小锁,并且代码中已经有了Git的信息,表示项目已经已经受到Git控制

2.5  第一次向Git服务器发布项目

我们上面看到的所有Git的受控信息,只是相对于克隆到本地的版本库,此时Git服务器并没有接收到这些工程文件,下面我们要做的将是第一次将本地版本库中的工程文件同步到Git服务器,即项目发布

工具栏 - 团队 - 管理连接,打开团队资源管理器

点击小房子,回到Git主页,点击同步

 

此时,出现如下界面

+

我们第一次将本地分支发布到远程服务器,点击发布

 

输入远程URL,发布,即可发布到远程库

我们可以打开GitStack查看日志,如下:

 

上面显示的时间,为你在本地操作的时间。我们可以看到Git作为分布式版本控制系统,你在离线进行操作,在推送时,显示的均为你操作时间,而非推送时间。

2.6  拉取、获取、合并、提交、推送、同步

项目开发过程中,我们通常进行下面几种操作,我一次性介绍,这个和上篇TortoiseGit类似,直接看本篇的同学,可以参考上篇,URL:图形化Git客户端工具TortoiseGit

拉取(Pull):将远程版本库合并到本地版本库; 相当于(Fetch+Meger)

获取(Fetch):从远程版本库获得最新版本

合并(Meger):将两个版本库进行合并操作

提交(Commit):将所做的更改,存入本地暂存库

推送(Push):将所做的更改,存入远程版本库

同步(Pull+Push):先将远程库拉取,再将本地库推送到远程库 注意这个顺序; 相当于(Pull+Push

 

我们对文件进行修改后,文件前有一个小对号,右击,点提交

我们在提交文件时,记得填写备注,在团队开发中,保持一个良好的习惯

提交在这里有三种:

提交:即将文件存入本地版本库

提交和推送:即将文件更改同时存入本地版本库和远程版本库

提交和同步:将文件更改提交到本地库的,再从远程版本库拉取新版本到本地,再推本地库到远程版本库

注意:

这里的操作,不针对当前文件,而是对所有变更进行提交、推送或同步。

2.7  创建分支

 对于创建分支在上篇(URL:图形化Git客户端工具TortoiseGit)中已经介绍过了,这里主要介绍一下如何基于Vs2015创建Git分支

工具栏 - 团队 - 管理连接,打开团队资源管理器

点击小房子,回到Git主页,点击分支

打开分支界面,在master分支上右击,选择 "从选定项创建本地分支"

在这里需要注意我们创建分支,有两种:

(1)创建本地分支

(2)创建远程会支

本地分支有创建前,一定要获取最新版本;远程分支,则要求所有成员最好能推送更改。

至于分支的创建是基于远程还是本地,最好能在团队成员之间达成一致。

下面介绍两种分支的创建方法

先看创建本地分支

输入一个分支名称,创建即可。

远程分支,我们需要选择如下

在创建远程分支时,一定要把跟踪远程分支,这个取消选择,否则将创建了一个跟踪分支,我们就不能发布了。

创建完成后,如下:

分支创建成功,接下就是发布到服务器

右击,点发布分支,即可。

可以看到,分支已经发布到服务器上了。

在服务器上通过GitStack也可以看到,多了一个分支。

 2.8 切换和合并分支

在VS2015中切换分支非常简单,只要在分支名称上双击,就可以了,项目资源管理器中的文件随之变化。

这里主要看一下合并,

我们先切换到新建的分支"2016-2-7",在分支名称右击,选择 合并自...

 

选择master ,点击合并,即可完成将master合并到新分支了。

 2.9 删除分支

删除分支,首先要从远端删除,如下:

注意,如果要删除刚才新建的分支,和上篇TortoiseGit一样,要切换到另一分支操作。

 

远端删除后,服务器上的分支就被删除了,本地的分支,直接删除即可。

3. 使用VS2015+HubGit创建开源项目

前面我们介绍了Git作为一个分布式版本控制系统,其最大的优势就是适合开源项目管理。如果你还没有托管一个开源项目,那么你Out了。

目前即于Git开源项目托管平台非常多,Hubgit.com可以说非常知名,只是免费用户,只能托管开源项目。

国内比较大的Git托管平台有:阿里(http://code.taobao.org/) GitCafe (https://gitcafe.com/)  Csdn(https://code.csdn.net/)   开源中国(http://git.oschina.net/)SVNChina(http://www.svnchina.com/)

 本篇我介绍一下如何在VS2015中创建并开发自己的开源项目,以Hubgit为例,其他平台使用都差不多。

3.1 创建Github用户

创建完成后,点右上角Sign in进入Github

 3.2 在Github上创建版本库

进入GitHub主页,点右上的 + 创建一个版本库

 

打开以后,如下

按图示完成,就可以了。

点右上角按钮,”your profile“查看你创建的版本库 test,点击进入

接下来的操作,我们已经很熟悉了,就是在VS2015中打开GitHub版本库,进入开源项目的世界了。。。

3.3 在VS2015上发布自己的开源项目

 

这一步相信,大家一定非常熟悉了,对,就和上面介绍的克隆自己服务器上的版本库一样。

然后,我们新建一个解决方案或打开一个已有的解决方案

创建完成后,

工具栏 - 团队 - 管理连接,打开团队资源管理器

点击小房子,回到Git主页,点击 更改

点击 提交和推送,这时提示一个身份验证,这是必须的,使用 前面注册的用户名和密码即可,当然这是开源项目,只要有Github用户,都可以进行版本克隆和提交代码

推送完成后,我们可以在github上查看

没问题,刚才推送的解决方案已经更新到github服务器了。

提交、获取、推送、分支,这些我就不用再说了吧,和上面介绍的完全一样了

3.4  如何加入别人的开源项目?

如何加入别人的开源项目?也就是别人如何参与你的开源项目,意思是一样的,就是除原创建者之外的人,要如何克隆版本库?

比如比较著名的开源项目jQuery,你如何开发他的项目呢?

你又不能直接在VS 2015中克隆人家的库,其实这个并不难办,看下面的图:

先进入Jquery的项目URL,然后点 右上的 Fork ,就将这个项目加入到你的库里了,相当于直接克隆了一个副本到你的GitHub上。

这下,你就可以用自己的帐号,在VS上克隆你的GitHub中的Jquery项目了,你可以加入自己的idear,如果你希望jquery的官方库能接受你的修改,你就可以在GitHub上发起一个pull request。当然,官方是否接受你的pull request就不一定了。

最后,我忘记说一件事了,我们刚才建的版本库test,别人也可以用同样的方法进行参与,只是你一定要记得,将初始库设为只读。

3.5  如何删除创建的版本库

先进入你的版本库,点右边的setting,进入设置页,拉到最底下

点击 删除该版本库,再输一次版本库名称,即可。

posted @ 2016-10-26 09:42  一夜秋2014  Views(4588)  Comments(0Edit  收藏  举报