最近事情比较多,一眨眼,已经半个月没有写博客了~不得不感慨光阴似箭啊!当然,2015年有很多让我们期待的事情,比如win10正式版、.NET开源、VS2015等等。想想都让人兴奋啊~~ 为了迎接VS2015正式版的到来,我们要更加努力的学习。今天,我们来说一下在VS2013中如何使用Git来管理项目,你不会Git命令也没关系,有了VS2013这个神器,我们即使不会Git命令也可以完美的使用Git来完成项目的管理和发布。
一、将VS2013项目托管到Git
现在的开源项目越来越多,我们会注意到这些开源项目大多共享在GitHub上面,包括微软开源的项目也在Github上,当然,如果你用过Git后,会发现Git确实不错,其实在VS2013里面已经集成了Git,VS2012我没有用过,大家可以看看有没有。
下面我们来新建一个项目看看如何将项目托管到Git,新建一个控制台程序,注意,这里我们电脑没有安装任何与Git相关的工具,仅仅VS2013。在解决方案上面,点击鼠标右键,如图:
点击将解决方案添加到源代码管理,出现如下窗口,我们选择Git如图:
接下来点击OK即可,然后我们看看项目资源管理器,出现了如+号的图标:
我们再在解决方案上面点击鼠标右键,有个提交...菜单,点击提交,出现提交界面,我们输入消息,如图:
提交后,我们会看到如下界面,这个地方我们可以看到当前分支为master,点击菜单还可以新建分支和管理分支,如图:
当然,在这里我们新建分支和删除分支,如果我们的项目有多个分支的话,还可以可以在这个地方切换到指定分支,不需要一条Git命令。我们点击未同步提交,可以看到项目中没有与远程仓库同步的提交,这个时候我们没有添加远程仓库,如图:
我们可以输入远程Git仓库地址,如GitHub的地址,然后点击发布,中途会弹出输入用户名和密码的对话框,然后就会将项目同步到远程仓库。上面还有拉取和推送功能,如果我们只点击了同步,相当于先拉取在推送。接下来我们看一下资源管理器,这里我修改了Program.cs文件,可以看到前面显示一个红色对勾,没有修改过的就显示一个蓝色的锁。如果想要提交某文件,点击右键菜单,提交即可。
这里我修改提交了两次,然后我们来一下如何查看以前的版本和进行版本比较,如图,在Program.cs文件上面点击鼠标右键,点击查看历史记录...,会打开如下窗口,我们可以看到我们每一次的提交:如图:
可以看到我们当前所在分支是master,这个时候我们双击某个记录就可以查看那个版本的代码,我们选择两个版本,右键,点击比较...,就可以比较两个文件的差异,如图:
可以看到VS2013进行了分段对比,看起来还是比较清晰的:
到这里,VS2013里面的Git操作基本上就完了,掌握了这些基本上就可以完成日常的开发工作了,当然如果你不满足这些,继续往下看。
二、使用Github客户端
使用过Git的人会发现,VS2013虽然可以管理我们自己的项目,但是无法克隆别人的项目,一些高级的Git功能也无法使用。那么下面我们就来安装Github客户端来弥补VS2013的不足,GitHub for windows下载地址https://windows.github.com/,安装Github需要安装msysgit,下载地址http://msysgit.github.io/,首先安装好msysgit,然后安装GitHub客户端即可。
安装完msysgit后,我们会看到系统右键菜单多了如下两项:
这个时候,我们可以通过Git命令来管理Git仓库了,也就是说,我们可以使用一些Git命令来完成一些操作了。
我们再来看看Github客户端,如图:
这里我们可以创建本地Git仓库,Clone远程Git仓库,还可以查看到文件的修改情况,。当然还有强大的分支管理,新建分支,合并分支。
下面来说一下,Github客户端如何发布项目到远程仓库,其实GitHub并不是只能发布到GitHub,还可以发布到其他任意的远程Git仓库,如图:
打开仓储设置,输入自己的远程Git仓库地址即可,接下来会自动同步:
更多关于Github客户端的使用就不一一细说了,比较简单,大家有兴趣可以加入QQ交流群(见下方),一起交流学习。
今天,由于篇幅关系,就先写到这里了,明天为大家介绍一些国内比较好的远程Git代码托管仓库。当然,如果真的要玩转Git大家还是要看些Git的教程,要做到知其然,知其所以然,不能一味的照搬教程。
作者:雲霏霏
QQ交流群:243633526
博客地址:http://www.cnblogs.com/yunfeifei/
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。
如果大家感觉我的博文对大家有帮助,请推荐支持一把,给我写作的动力。