标签:sys 推送 init 表情 分布 显示 通知 问题 repos
目录:
前言
Github简介
Github基本功能
Github文件的相关操作
Github的创建与应用
Github特点
Github与TFS的区别
前言:
在上一节软件开发与创新课程设计课上,王文娟老师发布了在个人博客上介绍源代码管理工具,重点介绍其中一种的学习任务,因此,这是我为软件开发与创新课程设计写的第三篇博客。
一、Github简介
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。GitHub于2008年4月10日正式上线,除了git代码仓库托管及基本的 Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目 Ruby on Rails、jQuery、python等。
1、Github基本功能
主页面为:
GitHub可以托管各种git库,并提供一个web界面,但与其它像SoureForge或Google Code这样的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的"fork"的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的"pull request"机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。GitHub进行分支就像在Myspace(或Facebook…)进行交友一样,在社会关系图的节点中不断的连线。GitHub项目本身自然而然的也在GitHub上进行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并不如此。在GitHub,用户可以十分轻易地找到海量的开源代码。
(1)工具栏
LOGO:点击GitHub的LOGO就会进入控制面板。
搜索窗口:在这里输入想找的用户或代码片段,就可以搜索到与之相关的信息。
(2)控制面板
(3)仓库
仓库的URL形式为:https://github.com/用户名/仓库名;这个页面可以说是各个软件的大门。循着目录找下去我们就可以查阅自己想要的文件。如果有相应权限,还可以对文件的内容直接进行编辑、提交。
在软件开发过程中,开发者为了跟踪BUG及进行软件相关讨论,进而方便管理,创建了Issue。管理Issue的系统成为BTS(Bug Tracking System,BUG跟踪系统)。
GitHub也为自身加入了BTS功能。在GitHub上,可以将它作为软件开发者之间的交流工具,多多加以利用。一下几种情况可以使用这个功能:发现软件的BUG并报告;有事想向作者咨询、探讨;事先列出今后准备实施的任务
Issue除BUG管理之外还有许多其他用途。在软件开发者的圈子中,将Issue用于多种用途的情况已经司空见惯。
Pull Request是用户修改代码后向堆放仓库发送采纳请求的功能,也是GitHub的核心功能。
在Pull Request页面能够列表查看当前处于Open状态的Pull Request。通过点击页面左部和上部的选项可以进行筛选和重新排列。
在列表中点击特定的Pull Request就会进入详细页面。页面上方显示着这次是从谁的哪个分支向谁的哪个分支发送了Pull Request。
Wiki是一个使用简答的语法就能编写文档的功能。所有有权限的人都可以对文章进行修改,所以比较适合多人共同编写文章的情况。创建、编辑文档时不必另外启动软件,适合用来针对更新频率较高的软件进行文档等信息方面的汇总。
与Issue和Pull Request相同,Wiki也支持GFM语法,所以可以轻松创建表现力丰富的文档。Wiki功能本身的数据也在Git中进行管理。点击Clone URL按钮可以将当前的Wiki的Git仓库URL复制到粘贴板中。用户能够通过Clone操作获取Wiki仓库,然后在本地创建、编辑页面,进行提交再Push,便可以完成对Wiki的创建及编辑工作。在Pages标签页中可以查看Wiki页面。
Pulse是体现该仓库软件开发活跃度的功能。近期该仓库创建了多少Pull Request或Issue,有多少人参与了这个仓库的开发等。都可以在这里一目了然。
根据这个页面,用户可以判断目前这个软件是否正在被积极开发,或者持有仓库修改权限的人是否在认真的记性BUG修正等维护工作。
2、Github的相关操作
(1)Github文件的相关操作
点开文件后会显示出文件的内容,同时右上角会显示用于该文件的菜单。Edit可以对文件内容进行编辑并提交。Raw可以直接在浏览器中显示该文件的内容。使用这个URL,就能通过HTTPS协议获取该文件。Blame能够按行显示最新提交的信息。History可以查看该文件的历史记录。Delete可以删除这个文件。
文件内容的左侧会显示该文件的行号。假如我们点击第十行的行号,这一行就会被高亮标记为黄色,同时URL末尾会自动添加#L10。使用这儿URL,程序员们在交流时,就可以将讨论明确指向某一行。另外,如果将#L10改为#L10-15,则会标记该文件的第10到15行。
在GitHub上,直接修改URL就可以让用户以多种形式查看差别。这里我们以Ruby on Rails仓库为例,介绍直接修改URL的一些技巧。
查看分支间的差别:
比如我们想看4-0-stable分支与3-2-stable分支之间的差别,可以像下面这样将分支名加到URL里。
这样,就可以查看两个分支间的差别了。可以看到,有65名程序员经过1710次提交,完成了3.2版本到4.0版本的升级工作。
假如我们想看master分支在最近7天内的差别,可以像下面这样将时间加入URL:
这样,就可以查看这段期间内的差别。
Day、Week、Month、Year指定期间可以使用以上四个时间单位。如果差别过大则不会列出所有提交,只显示最近的比部分。
假设我们想查看master分支2013年1月1日与现在的区别,可以将日期加入URL:
这样,便可以查看与指定日期之间的差别。但是如果指定日期与现在的差别过大,或者指定日期过于久远,则无法显示。由于可以从多种角度查看差别,所以GitHub也称得上是一个优秀的源代码查看器。
(3)其他:
二:Github的创建与应用
(1)创建账号
GitHub官网地址:https://github.com/
点击Sign up注册GitHub账号
填写用户,邮箱,密码
点击create an account,进行邮箱确认
点击continue进行下一步,进行问卷(可选)
(2)创建应用
1.点击右上角图标,选择settings
2.选择最后一个Developer settings
3.点击绿色按钮Register a new applications
4.以下分别为项目名称,主页地址,项目描述,回调地址
5. 完成项目注册,获取到Client ID 和 Client Secret
三:Github特点
Github是一个代码托管平台和开发者社区,开发者可以在Github上创建自己的开源项目并与其他开发者协作编码。创业公司可以用它来托管软件项目,开源项目可以免费托管,私有项目需付费。Github可以托管各种git库,并提供一个web界面,但与其它像SourceFore或Google_ Code这样的服务不同,Github的独特卖点在于从另外一个项目进行分支的简易性。为一一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将Github称为代码玩家的HySpace。
优点:
(1)完整的支持Markdown语言,而且支持Emoji表情
(2)支持直接复制图片到页面,会自动上传图片(非常好的功能,知乎也支持)
(3)比较好的支持Mobile。虽然github没有手机客户端,但是一般开发者,写好的blog都(4)会通过微博进行分享,所以点击过来之后,就可以在手机浏览器里面访问
(5)使用github原生的功能,就可以进行类似评论的功能
(6)支持@用户功能,支持标签
(7)功能设计简洁实用上手很快,可用性好,已有很多相当质量的各类项目和优秀开发者在上面
缺点:
(1)国内访问速度太慢,经常出现connect time-out
(2)wiki功能太弱,直接导致文档(对于开源项目很重要)经常被分离到一个独立站点
(3)免费套餐不支持私有项目,无非解决企业内部的需求,github:fi价格过高(最便宜要$5,000/年)
(4)没有集成社交分享功能。比如后面可以分享到微博,微信朋友圈等
四、Github与TFS的区别
(1)team foundation是微软提供的版本控制服务,集成在Visual Studio中。当你新创建一个工程之后,如果需要使用team foundation,需要在菜单中选择TEAM->Connect to Team Foundation Server。通过微软的账号连接到服务器上。然后选择一个远程的代码库(通过网页登陆visual studio online创建的)。之后才可以提交代码。版本控制需要联网。微软提供的这项服务5人以下免费。
git作为分布式版本控制,使用的时候非常灵活。它允许用户在本地创建版本控制的仓库,在非联网状态下就可以进行代码的提交,比较,历史查看等。在完成本地的提交之后,用户可以选择把代码提交到远程服务器上,用于不同环境的代码同步。依然举例Visual Studio,在创建工程的时候你可以把git勾上,这样就可以在本地管理代码。在需要远程同步的时候,也可以通过Team Foundation Server提交git的代码。git不是微软的专属,你可以把git提交到很多远程服务器上,最著名的就是Github。目前国内也出现了很多免费的Git代码服务,比如git开源中国,git京东,等。
(2)TFS的操作很多余,而GitHub for Windows操作起来很简单。在GitHub上你可以立即查看更改后的文件以及更改的内容
(3)GitHub变得越来越流行,最近Github发布了Github for Windows则大大降低了学习成本和使用难度,它甚至优于TFS。微软也开始逐渐从TFS向GitHub转移了。不是TFS 输给了 Github,而是 TFS 原生的源代码管理输给了 GIT。TFS 定位并不是源代码管理,而是一个团队工具,贯穿需求,开发,测试,发布各个流程提供自动化工具。
标签:sys 推送 init 表情 分布 显示 通知 问题 repos
原文地址:https://www.cnblogs.com/coderliudan/p/12961776.html