无法为第一次提交创建 git 别名
Cannot create git alias for first commit
我一直在努力尝试在我的 .gitconfig
中创建以下别名(显示树历史的第一次提交):
[alias]
first = log $(git log --pretty=format:%H|tail -1)
但是,我得到以下异常:
fatal: ambiguous argument '$(git': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
我一直在尝试该命令的几个替代版本,但无法正确执行。
我想在 .gitconfig
文件中手动创建它,而不是通过在终端中提供命令(即 git config --global
)。
有人知道这个问题可能出什么问题吗?
我在 unix/terminal 刚开始学习 :-)
编辑
我希望能够使用别名获得与 运行 来自终端的命令相同的结果。也就是说,作者、SHA、日期、提交消息,而不仅仅是 SHA。
| tail -1
不是 git 命令,所以不能这样使用。尝试:
first = "! git log --pretty=%H | tail -1"
至于"first"提交,考虑到合并不相关的分支,一个分支可能有多个第一次提交。它们被称为根提交。 --max-parents=0
只能列出根提交。在大多数情况下,一个分支只有一个根提交。尝试 git 方式:
first = log --pretty=%H --max-parents=0
实际上,出于某种原因我不得不使用单引号。感谢@ElpieKay 指导我进入正确的路线。以下是我想要实现的解决方案!
first = log --pretty='%C(yellow)commit %H%nDate:\t%ad%nAuthor: %an <%ae>%n%n\t%s' --max-parents=0
我一直在努力尝试在我的 .gitconfig
中创建以下别名(显示树历史的第一次提交):
[alias]
first = log $(git log --pretty=format:%H|tail -1)
但是,我得到以下异常:
fatal: ambiguous argument '$(git': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
我一直在尝试该命令的几个替代版本,但无法正确执行。
我想在 .gitconfig
文件中手动创建它,而不是通过在终端中提供命令(即 git config --global
)。
有人知道这个问题可能出什么问题吗? 我在 unix/terminal 刚开始学习 :-)
编辑 我希望能够使用别名获得与 运行 来自终端的命令相同的结果。也就是说,作者、SHA、日期、提交消息,而不仅仅是 SHA。
| tail -1
不是 git 命令,所以不能这样使用。尝试:
first = "! git log --pretty=%H | tail -1"
至于"first"提交,考虑到合并不相关的分支,一个分支可能有多个第一次提交。它们被称为根提交。 --max-parents=0
只能列出根提交。在大多数情况下,一个分支只有一个根提交。尝试 git 方式:
first = log --pretty=%H --max-parents=0
实际上,出于某种原因我不得不使用单引号。感谢@ElpieKay 指导我进入正确的路线。以下是我想要实现的解决方案!
first = log --pretty='%C(yellow)commit %H%nDate:\t%ad%nAuthor: %an <%ae>%n%n\t%s' --max-parents=0