热门标签 | 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


推荐阅读
  • 解决微信电脑版无法刷朋友圈问题:使用安卓远程投屏方案
    在工作期间想要浏览微信和朋友圈却不太方便?虽然微信电脑版目前不支持直接刷朋友圈,但通过远程投屏技术,可以轻松实现在电脑上操作安卓设备的功能。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • 本文详细介绍了如何在 Windows 环境下使用 node-gyp 工具进行 Node.js 本地扩展的编译和配置,涵盖从环境搭建到代码实现的全过程。 ... [详细]
  • 离线环境下的Python及其第三方库安装指南
    在项目开发中,有时会遇到电脑只能连接内网或完全无法联网的情况。本文将详细介绍如何在这种环境下安装Python及其所需的第三方库,确保开发工作的顺利进行。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细介绍了如何在 Spring Boot 应用中通过 @PropertySource 注解读取非默认配置文件,包括配置文件的创建、映射类的设计以及确保 Spring 容器能够正确加载这些配置的方法。 ... [详细]
  • 本文详细介绍了macOS系统的核心组件,包括如何管理其安全特性——系统完整性保护(SIP),并探讨了不同版本的更新亮点。对于使用macOS系统的用户来说,了解这些信息有助于更好地管理和优化系统性能。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 本题通过将每个矩形视为一个节点,根据其相对位置构建拓扑图,并利用深度优先搜索(DFS)或状态压缩动态规划(DP)求解最小涂色次数。本文详细解析了该问题的建模思路与算法实现。 ... [详细]
  • 本文介绍如何在Linux Mint系统上搭建Rust开发环境,包括安装IntelliJ IDEA、Rust工具链及必要的插件。通过详细步骤,帮助开发者快速上手。 ... [详细]
  • Startup 类配置服务和应用的请求管道。Startup类ASP.NETCore应用使用 Startup 类,按照约定命名为 Startup。 Startup 类:可选择性地包括 ... [详细]
  • 本文深入探讨了 Redis 的两种持久化方式——RDB 快照和 AOF 日志。详细介绍了它们的工作原理、配置方法以及各自的优缺点,帮助读者根据具体需求选择合适的持久化方案。 ... [详细]
  • 探讨如何优化 npm 构建过程,提升开发效率,减少构建时间,并介绍自动化部署的最佳实践。 ... [详细]
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社区 版权所有