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

获取gitlog的前'x'个字符

如何解决《获取gitlog的前'x'个字符》经验,为你挑选了1个好方法。

我正在尝试仅获取git日志的前40个字符,我当前无法正常工作的命令是:

git log  | cut -c 1-40 >> some_file

这将输出整个日志。

Kinda是Linux新手,有什么建议吗?

编辑:

git log  | head -n1 >> some_file

每个@Someprogrammerdude建议的工作命令



1> torek..:

| head方法很好- head程序是用于提取输入流或某些输入文件的开头的通用过滤器-但值得注意的是,默认git log输出的第一行包含单词,commit其后是提交的哈希,(可能并非巧合)拼写为40个字符:

$ git log | head -n 1
commit 8f60064c1f538f06e1c579cbd9840b86b10bcd3d

由于commit (包括尾随空格)的长度为8个字符,因此,如果将其切成40个字符,则会得到提交ID的32个字符的缩写。

由于git log通常从显示HEAD提交开始,这一切都意味着您正在获得HEAD提交的哈希ID(的一部分),并且在Git中有一种更直接的方法:

$ git rev-parse HEAD
8f60064c1f538f06e1c579cbd9840b86b10bcd3d

这省略了单词commit(和空格),但给了您我怀疑您关心的40个字符。您可以通过添加--short或来将哈希缩短为任意数量的字符:--short=count

$ git rev-parse --short=12 HEAD
8f60064c1f53

通常,可以使用将单个名称(例如master,标记名称或)转换HEAD为Git对象标识符(SHA-1哈希)的方法git rev-parse


推荐阅读
author-avatar
手机用户2502938137
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有