写程序必然需要版本控制,哪怕是个人项目也是必须的。我们在开发UWP APP的时候,VS2015默认提供了对微软TFS和Git的支持。考虑到现在Git很火,作为微软系的程序员也不得不学一点防身,以免被开源世界的家伙们嘲笑。蜀黍我Git也是菜鸟一只(还请老司机多多指点),只会用VS2015和SourceTree这样的GUI工具点一点按钮,但是我相信用惯了SVN和TFS的童鞋们,需要一点勇气去学习一些新东西,特别是Git已经形成潮流,并且极大的推动了开源代码的交流学习。再说只要10分钟就能学会……基本的使用……

  首先要区分下Git和GitHub,前者是指一种版本控制软件,各个大厂可以有自己的具体实现。后者其实是指GitHub这个网站,它使用Git来提供代码托管的服务。而且只要是开源的项目就是完全免费的(不开源的项目蜀黍我自然是用TFS了,也是免费的)。

  本篇我们要创建一个新的工程,然后上传到GitHub。那么第一步就是去GitHub注册一个账号,这个怎么注册我就不写攻略了……我坚信不会有人卡在这一步的……注册成功后我们点击“New Respository”来创建一个Respository供我们提交代码用。填写Respository的名称,点击Create respository即大功告成

  创建成功后跳转到如下界面,我们通过右侧的按钮拷贝下Respository的URL,一会我们需要在VS2015中填写这个地址来提交代码。放心只需要填写一次,以后都是傻瓜式的点一点按钮。(说实话我挺受不了配置环境需要阅读上千字说明,再敲一堆不知所以的命令行)

  然后我们打开熟悉的VS2015,创建一个新的工程FirstAppInGit。创建成功后,我们需要找到Solution Explorer(解决方案管理器),选择“Add Solution to Source Control”

  因为本篇是为了学习在VS2015中使用Git,这次就选择Git并点击OK

  之后会自动打开Team Explorer窗口,因为还没有提交过任何文件,所有文件的状态都是“Add”。这时我们可以在Comment文本框中填写一些注释,比如“Create Project, first commit”之类的,然后点击Commit提交。

  点击提交后会提示说已在本地创建了Commit,可以通过Sync来提交到代码服务器。这个就是Git和SVN,TFS等版本控制软件的主要区别之一。在提交到代码服务器之前,Commit的内容是保存在本地的。

  这样做最明显的好处就是本地的Commit,在没有向代码服务器push前,不会影响到服务器端的代码,即使坑了也不会有人过来打你。

  同时本地Commit次数是没有限制的,可以将自己的代码慢慢修改,做多次的Commit,确认没有问题后,再做Push。

  Commit之后就可以做Push操作了,我们打开Sync页面。因为是第一次,实际尚未连接到Git的Repository,所以需要在Publish to Remote Repository的文本框中填写GitHub中创建的Repository对应的URL。

  我们将之前复制的URL粘贴到文本框中,再点击Publish按钮。上方的进度条开始滚动,不一会就会提示操作完成,这时我们可以去Respository页面检查一下。

  我们在打开GitHub的页面,转到对应的Respository页面,就会看到代码已经提交成功。

  至此,我们的UWP工程便托管在GitHub上了。如果代码有进一步的修改,需要Commit就点击Team Explorerl里的Changes按钮来进一步操作。如果需要Push提交代码或对应的拉取代码Pull,就需要通过Sync按钮来进行。

  是不是非常的简单易用?本篇有关VS2015使用Git的Hello World就到此结束,抛砖引玉欢迎老司机指点。

UWP开发入门(十九)——10分钟学会在VS2015中使用Git的更多相关文章

  1. Kinect for Windows SDK开发入门(十九):Kinect Fusion

        Kinect for Windows SDK1.7中引入了Kinect Fusion功能.在1.8的SDK中对该功能进行了改进和强化,Kinect Fusion能够使得我们使用Kinect f ...

  2. UWP开发入门(九)——简单界面的布局技巧及屏幕适应

    嘿嘿嘿,题目比较绕哈.本篇主要讨论一般情况下,页面的布局技巧,怎么将元素的展现尽量做到分辨率无关.基本的思路仍然是尽量少的标定具体的数字,而是用比列来标注各元素占据的空间. 这里我打算用易信的名片页来 ...

  3. UWP开发入门(十)——通过继承来扩展ListView

    本篇之所以起这样一个名字,是因为重点并非如何自定义控件,不涉及创建CustomControl和UserControl使用的Template和XAML概念.而是通过继承的方法来扩展一个现有的类,在继承的 ...

  4. 10分钟学会搭建Android开发环境 Eclipse: The import android.support cannot be resolved

    10分钟学会搭建Android开发环境_隋雨辰 http://v.youku.com/v_show/id_XNTE2OTI5Njg0.html?from=s1.8-1-1.2 The import a ...

  5. UWP开发入门(十六)——常见的内存泄漏的原因

    本篇借鉴了同事翔哥的劳动成果,在巨人的肩膀上把稿子又念了一遍. 内存泄漏的概念我这里就不说了,之前<UWP开发入门(十三)——用Diagnostic Tool检查内存泄漏>中提到过,即使有 ...

  6. emacs最简单入门,只要10分钟

    macs最简单入门,只要10分钟  windwiny @2013    无聊的时候又看到鼓吹emacs的文章,以前也有几次想尝试,结果都是玩不到10分钟就退出删除了. 这次硬着头皮,打开几篇文章都看完 ...

  7. UWP开发入门系列笔记之(一):UWP初览

    标签: 随着微软Build2015带来的好消息,Win10正式版发布的日子已经离我们越来越近了,我们也终于欣喜地看到:一个统一的Windows平台对于开发人员来说充满了吸引力,这局棋下的好大的说--于 ...

  8. 10分钟学会Linux

    10分钟学会Linux有点夸张,可是能够让一个新手初步熟悉Linux中最重要最主要的知识,本文翻译的英文网页在众多Linux入门学习的资料中还是很不错的. 英文地址:http://freeengine ...

  9. UWP开发入门(25)——通过Radio控制Bluetooth, WiFi

    回顾写了许久的UWP开发入门,竟然没有讲过通过Windows.Devices.Radios.Radio来控制Bluetooth和WiFi等功能的开关.也许是因为相关的API设计的简单好用,以至于被我给 ...

随机推荐

  1. Swift入门篇-结构体

    前面主要是介绍swift语言中基本类型的用法,今天给大家介绍的是swift的结构体的用法,swift中结构体的用法和其他语言的用法,还有不太一样,不过您多敲几遍,就可以理解结构体,结构体在ios开发中 ...

  2. Gradle 构建 android 应用常见问题解决指南

    前言 android gradle 插件已经发展到0.5.7,同时gradle 本身也到了1.8,相比两个月前,android gradle 更快,更完善,也更好用了,为了让各位androider 早 ...

  3. android 自定义日历控件

    日历控件View: /** * 日历控件 功能:获得点选的日期区间 * */ public class CalendarView extends View implements View.OnTouc ...

  4. Swift编程语言中的方法引用

    由于Apple官方的<The Swift Programming Guide>对Swift编程语言中的方法引用介绍得不多,所以这里将更深入.详细地介绍Swift中的方法引用. Swift与 ...

  5. [译] 二、开始iOS编程之前,你还需要做什么?

    声明:本文翻译自AppCoda网站的文章:What You Need to Begin iOS Programming?,作者是创建者Simon Ng.如有异议,请联系博主.   更新:帖子已经重新被 ...

  6. Servlet3.0学习总结——基于Servlet3.0的文件上传

    Servlet3.0学习总结(三)——基于Servlet3.0的文件上传 在Servlet2.5中,我们要实现文件上传功能时,一般都需要借助第三方开源组件,例如Apache的commons-fileu ...

  7. ch5 MySQL 备份与恢复

    第 5 章 MySQL 备份与恢复 前言 数据库的备份与恢复一直都是 DBA 工作中最为重要的部分之一,也是基本工作之一.任何正式环境的数据库都必须有完整的备份计划和恢复测试,本章内容将主要介绍 My ...

  8. [原]OpenGL基础教程(五)缓冲区数据更新方式

    1.glBufferSubData 适用于相同数据类型 void SetPositionY(float y){    vector<Vector3<float>>::itera ...

  9. 关于mvc、webapi中get、post、put、delete的参数

    webapi中post提交的数据必须是一个类,get提交的数量无所谓 多种参数get时,参数名不能相同: 在能通过c#的校验的前提下,参数名.参数数量不能全完相同 public string Get( ...

  10. SQL 操作结果集 -并集、差集、交集、结果集排序

    操作结果集 为了配合测试,特地建了两个表,并且添加了一些测试数据,其中重复记录为东吴的人物. 表:Person_1魏国人物 表:Person_2蜀国人物 A.Union形成并集 Union可以对两个或 ...