写程序必然需要版本控制,哪怕是个人项目也是必须的。我们在开发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. django关闭debug后,静态文件的处理

    Django框架仅在开发模式下提供静态文件服务.当我开启DEBUG模式时,Django内置的服务器是提供静态文件的服务的,所以css等文件访问都没有问题,但是关闭DEBUG模式后,Django便不提供 ...

  2. object-c学习1

    因为公司需要,开始看object-c,虽然还没ios系统,但现学下语法. 第一个例子不应该是helloWorld吗?但<Learn Objective-C on the Mac>书上不是. ...

  3. 用issnode+IIS来托管NodeJs Server

    用issnode+IIS来托管NodeJs Server之一:安装篇 用issnode+IIS来托管NodeJs Server之二:移植 用issnode+IIS来托管NodeJs Server之三: ...

  4. No module named flask.ext.sqlalchemy.SQLALchemy

    在学习<OReilly.Flask.Web.Development>的时候,按照书的例子到了数据库那一章,在运行python hello.py shell的时候出现了“ImportErro ...

  5. 分享一个漂亮的ASP.NET MVC黑色界面框架

    插件应用架构概述 基于LCLFramework插件框架的应用由以下三个部分构成: (1)主程序:针对特定应用环境(Web.WinForm等应用环境),加载启动插件,获取插件入口,运行入口程序. (2) ...

  6. LeetCode: Unique Binary Search Trees II 解题报告

    Unique Binary Search Trees II Given n, generate all structurally unique BST's (binary search trees) ...

  7. iOS 10.0 更新点(开发者视角)

    html, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin: 0px; padding: 0 ...

  8. 云服务器 ECS Linux 系统盘数据转移方法

    转自:https://help.aliyun.com/knowledge_detail/41400.html 问题描述 购买云服务器 ECS Linux 服务器时,未购买数据盘,使用一段时间后,随着业 ...

  9. PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”

    PowerDesinger16创建数据库表到SQL2008R2时,执行报“对象名sysproperties无效”错误. 主要是在建模时我们对表.列增加了些说明注释,而Sql2005之后系统表syspr ...

  10. ffmpeg安装的问题

    php语音转换需要安装ffmpeg文件 参考地址: http://thierry-xing.iteye.com/blog/2017864 http://diogomelo.net/blog/11/en ...