资讯专栏INFORMATION COLUMN

Spring 指南(了解Git)

ivyzhang / 882人阅读

摘要:了解是一个免费开源的分布式版本控制系统,它旨在快速高效地处理任何规模和范围的项目。关键的挑战是了解每个工具的命令和语言的差异,例如,中的意味着回滚当前更改,恢复为正式版本。

了解Git

Git是一个免费开源的分布式版本控制系统(DVCS),它旨在快速、高效地处理任何规模和范围的项目。

Git是由Linux创建者Linus Torvalds发明的,用于支持庞大的、不同的Linux开发人员群体,但Git的受欢迎程度与http://github.com关系更紧密,Git已存在多年,但直到GitHub受欢迎程度激增之后,才在Linux社区之外获得广泛认可。GitHub允许你免费托管开源项目,它还提供简单的钩子和友好的用户体验,使Git更容易使用。

Mac Homebrew等其他项目也对Git投入很深,Homebrew允许你在Mac上安装开源软件包,构建和管理这些公式的工具利用了Git,用于差异工具、制作补丁、管理资源,以及通过拉取请求提交新的和更新的包。

Git与其他DVCS

另外两个最受欢迎的DVCS选择是Mercurial和Bazaar,Mercurial有命令行工具hg(以汞的化学符号命名),而Bazaar的命令行工具是bzr

Mercurial与许多开源项目相关联,Ubuntu Linux背后的Canonical公司使用Bazaar,开发人员通常需要熟悉Git、Mercurial和Bazaar。

开发人员使用的DVCS通常由开发人员参与的组织决定,而不是由给定的一组功能决定,Git、Mercurial和Bazaar都具有基本功能,例如分支、标签、合并以及不依赖于中央服务器,目前使用Git的开发人员可能会在一年后在Mercurial管理的另一个项目开始工作。

关键的挑战是了解每个工具的命令和语言的差异,例如,Mercurial中的hg revert意味着回滚当前更改,恢复为正式版本。git revert意味着添加一个反转先前编辑的新提交,Git有一个命令来支持像Mercurial这样的更改,但它有一个不同的名称。

Git与非分布式SCM

几个非分布式源代码管理系统(SCM)早于DVCS并仍在使用中:

Subversion

CVS(并发版本系统)

许多专有版本控制系统目前仍在大量使用,例如:

Rational ClearCase

Perforce

Visual SourceSafe

这些专有产品通常与其他软件开发工具捆绑在一起,因此在某些软件开发商店中根深蒂固。

与DVCS模型相反,这些系统中的关键因素是它们依赖中央服务器来保存跟踪版本和分支所涉及的所有关键数据,从本质上讲,开发人员在家中进行多次提交,与此中央服务器断开连接,然后将其添加到服务器,这不是内置功能,其中一些系统增加了支持此类功能的特性,但它并不是其本质的核心部分。

为了说明DVCS和非DVCS的SCM系统之间的区别,请考虑两个人如何分别独立工作,在使用DVCS时如何在某个遥远的地方会面,比如在游轮旅行中,并共享提交。共享提交将具有与中央服务器上相同的权限,使用非分布式SCM时,这两个人只能共享代码差异,而不能提交,为了使提交成为正式提交,必须在到家并访问中央服务器时将提交发布到中央服务器。

DVCS的固有优势

像Git这样的工具的内置优势在于每个拥有副本的人都拥有重建项目所需的一切,如果中央服务器崩溃且所有数据都丢失,则可以将任何远程副本指定为正式副本,因为它将具有足够的信息以继续,如果开发人员没有最新的提交,则会出现唯一的差异。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/73119.html

相关文章

  • Spring 指南(目录)

    摘要:指南无论你正在构建什么,这些指南都旨在让你尽快提高工作效率使用团队推荐的最新项目版本和技术。使用进行消息传递了解如何将用作消息代理。安全架构的主题指南,这些位如何组合以及它们如何与交互。使用的主题指南以及如何为应用程序创建容器镜像。 Spring 指南 无论你正在构建什么,这些指南都旨在让你尽快提高工作效率 — 使用Spring团队推荐的最新Spring项目版本和技术。 入门指南 这些...

    only_do 评论0 收藏0
  • Spring 指南(调度任务)

    摘要:调度任务本指南将指导你完成使用调度任务的步骤。创建调度任务现在你已经设置了项目,可以创建调度任务。还有其他选项,例如,它指定从完成任务计算的调用之间的间隔,你还可以使用表达式进行更复杂的任务调度。 调度任务 本指南将指导你完成使用Spring调度任务的步骤。 将要构建什么 你将构建一个应用程序,使用Spring的@Scheduled注解每五秒打印一次当前时间。 需要什么 大约15分钟...

    xiaochao 评论0 收藏0
  • Spring 指南(构建RESTful Web服务)

    摘要:构建服务本指南将引导你完成使用创建服务的过程。接下来,你将创建将为这些问候语提供服务的资源控制器。告诉在包中查找其他组件配置和服务,允许它找到控制器。显示日志输出,该服务应在几秒内启动并运行。 构建RESTful Web服务 本指南将引导你完成使用Spring创建hello world RESTful Web服务的过程。 将要构建什么 你将构建一个接受HTTP GET请求的服务: ht...

    yzzz 评论0 收藏0
  • Spring Boot 参考指南(通用的应用程序属性 ①)

    摘要:第章附录附录通用的应用程序属性可以在文件,文件,或作为命令行开关,中指定各种属性,本附录提供了一个通用的属性列表和对使用它们的底层类的引用。本示例文件仅作为指南,不要将整个内容复制粘贴到应用程序中,相反,只选择你需要的属性。 第X章. 附录 附录A. 通用的应用程序属性 可以在application.properties文件,application.yml文件,或作为命令行开关,中指定...

    ispring 评论0 收藏0
  • 使用Gradle构建Java项目

    摘要:要从头开始,请继续使用构建。文件夹应包含项目运行单元测试的报告。由于该项目尚未进行任何单元测试,因此该报告无效。使用构建项目是启动构建的首选方式。现在可用于构建项目。概要恭喜您现在已经创建了一个简单而有效的构建文件,用于构建项目。 本指南将引导您使用Gradle构建一个简单的Java项目。 你要构建什么 您将创建一个简单的应用程序,然后使用Gradle构建它。 你需要什么 大约15分...

    xiaokai 评论0 收藏0

发表评论

0条评论

ivyzhang

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<