热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

使用Git描述没有标签

如何解决《使用Git描述没有标签》经验,为你挑选了2个好方法。

我有一个存储库,当我运行时只给我一个哈希git describe.直到今天我都不知道它是否因为该--always选项(我正在使用它)而执行此操作,因为该存储库没有标记.我有另一个包含大量标签的存储库.

我怎样才能git describe用来排除标签,只给我一个哈希?我希望拥有所有其他功能,git describe以防我需要使用其他功能,例如脏标记; 我只想排除标签.这是可能的,还是标签的核心特征describe

帮助页面似乎表明了这一点,但我只是想确定一下.我在Ant build.xml文件中使用它,所以我试图保持这个简单.



1> torek..:

是的,但这不一定是个好主意.这里一个--all选项,它会搜索分支的名称,或事实上,所有引用,为好,但如果你使用,你可能还需要--long.

描述

git describe输出的核心特征是它以一个(或应该是)人类可读的名称开头:

v1.2.3

对此,如果需要,Git将添加一个后缀,指示当前(或请求的)提交不完全是此字符串命名的提交.后缀告诉你和Git偏离标签多少钱.如果没有后缀,则标记本身命名提交.由于标签从来没有1的举动,如果我们有这个名字,我们都保证2寻找使用该名称的正确提交.

使用没有标签的存储库而不是--always:

$ git describe
fatal: No names found, cannot describe anything.

--all但是,如果我们添加,我们可能会得到:

$ git describe --all
heads/master

一个人类可读的名称,但它有一个问题:它不能唯一地标识一个特定的提交,因为分支名称确实移动.一旦我在这个存储库中进行了新的提交,refs/heads/master现在命名一个不同的提交.

由于这些输出之一的通常意图git describe是提供人类可读但精确提交指定的ID,因此分支名称从来不是那么精确,不一定是好事.

可以添加--long:

$ git describe --long
heads/master-0-g2cbd83f

现在使用-g...后缀来指定实际哈希ID的前缀.现在Git可以验证master自己没有移动,或者如果有,你可以使用2cbd83f字符串来查找提交.


1好吧,几乎没有.请参阅有关何时以及为何以及为何不移动标签的git-tag文档.

2无论如何,保证标签没有移动.



2> TrentP..:

一种简单的方法是--always与该-exclude选项结合使用glob模式*,以排除所有标记。由于找不到任何不排除的标记,所以describe将回退到缩写的sha1加上可选的“ -dirty”等。

$ git describe --always --dirty --abbrev=5 
2018.02-rc1-58-gca0e6
$ git describe --always --dirty --abbrev=5 --exclude '*'
ca0e6


推荐阅读
  • 利用Node.js实现PSD文件的高效切图
    本文介绍了如何通过Node.js及其psd2json模块,快速实现PSD文件的自动化切图过程,以适应项目中频繁的界面更新需求。此方法不仅提高了工作效率,还简化了从设计稿到实际应用的转换流程。 ... [详细]
  • 本文提供了一个详尽的前端开发资源列表,涵盖了从基础入门到高级应用的各个方面,包括HTML5、CSS3、JavaScript框架及库、移动开发、API接口、工具与插件等。 ... [详细]
  • 本文介绍了Tomcat的基本操作,包括启动、关闭及首次访问的方法,并详细讲解了如何在IDEA中创建Web项目,配置Servlet及其映射,以及如何将项目部署到Tomcat。 ... [详细]
  • Hibernate全自动全映射ORM框架,旨在消除sql,是一个持久层的ORM框架1)、基础概念DAO(DataAccessorOb ... [详细]
  • 本文详细介绍了如何在最新版本的Xcode中重命名iOS项目,包括项目名称、应用名称及相关的文件夹和配置文件。通过本文,开发者可以轻松完成项目的重命名工作。 ... [详细]
  • 在Notepad++中配置Markdown语法高亮及实时预览功能
    本文详细介绍了如何在Notepad++中配置Markdown语法高亮和实时预览功能,包括必要的插件安装和设置步骤。 ... [详细]
  • 问题概述:在本地环境中代码运行正常,但部署到服务器后出现错误。具体表现为NCManager和SAXBuilder无法解析为类型。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 深入理解Java SE 8新特性:Lambda表达式与函数式编程
    本文作为‘Java SE 8新特性概览’系列的一部分,将详细探讨Lambda表达式。通过多种示例,我们将展示Lambda表达式的不同应用场景,并解释编译器如何处理这些表达式。 ... [详细]
  • 笔记说明重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系& ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • [附源码]计算机毕业设计JAVAjsp医药管理信息系统
    [附源码]计算机毕业设计JAVAjsp医药管理信息系统项目运行环境配置:Jdk1.8Tomcat7.0MysqlHBuilderX(Webstor ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
author-avatar
0523wei
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有