Git日志将引用元数据打印到文件



当我运行git log并在寻呼机中查看时,我会在提交旁边得到一些不错的ref元数据:

commit 212b18778130cdf36effe441890826b76b97a09f (HEAD -> master, tag: TAG_8.0.2, origin/author/bootstrap_gcm, origin/master, origin/HEAD)
Merge: 4d7e0962f 7f687a431
Author: Joe, Smith <joe.smith@company.com>
Date:   Sun Oct 4 18:03:37 2020 -0400
Merge branch 'jsmith/8.0.0_changes' into 'master'
See merge request project/project!1286
commit 4d7e0962fadc17ac3af23a85b64ecaf65d68bc42 (tag: TAG_8.0.1)
Merge: e7ccb690f cd10de563
Author: Joe, Smith <joe.smith@company.com>
Date:   Fri Oct 2 19:54:31 2020 -0400
Merge branch 'project2' into 'master'
See merge request project/project!1285

我所说的参考元数据是:

(HEAD -> master, tag: TAG_8.0.2, origin/author/feature_br1, origin/master, origin/HEAD)
(tag: TAG_8.0.1)

--在括号中提交的右侧。

然而,如果我做git --no-pager log > git.log,那么所有引用信息都会丢失:

commit 212b18778130cdf36effe441890826b76b97a09f
Merge: 4d7e0962f 7f687a431
Author: Joe, Smith <joe.smith@company.com>
Date:   Sun Oct 4 18:03:37 2020 -0400
Merge branch 'jsmith/8.0.0_changes' into 'master'
See merge request project/project!1286
commit 4d7e0962fadc17ac3af23a85b64ecaf65d68bc42
Merge: e7ccb690f cd10de563
Author: Joe, Smith <joe.smith@company.com>
Date:   Fri Oct 2 19:54:31 2020 -0400
Merge branch 'project2' into 'master'
See merge request project/project!1285

两个问题。

  1. 为什么?发送到寻呼机的同一文本不应该也重定向到文件吗?

  2. 有没有一种方法可以在转储到文件时保留括号中的引用信息?

发送到寻呼机的同一文本是否也应该重定向到文件?

否:decorate的默认设置为decorate=auto自动表示:

当进入屏幕(可能通过寻呼机(时,
  • 打开(设置为short(,但是
  • 关闭(设置为no(

这正是原因:

git --no-pager log --decorate > git.log

有效:--decorate是将decorate设置为short的缩写,用于执行这一命令。

请注意,使用git config,您可以为decorate选项配置自己的个人默认设置。参见git config文档;搜索CCD_ 13。

我仍然不确定第一个问题的答案是什么(为什么寻呼机中的ref信息没有转储到文件中(。然而,我找到了一个变通方法,包括--decorate标志:

git --no-pager log --decorate > git.log

这并不完全相同,但对我来说已经足够了。

最新更新