我想列出某人的 git 提交,但我不知道此后或之后的 git 命令格式

I want to list someone 's git commit ,but I don't know the git command formate of since or after

当我执行此 git 命令时:git rev-list --since=2015-03-01,它总是显示

Invalid object name 'usage'.

我不知道 since 或 after 的格式。 我正在使用 Java ProcessBuilder 来执行命令。 感谢任何帮助!

代码:

command=new String[] {"git", "rev-list", "--since=2015-06-22", "--pretty=oneline"};
ProcessBuilder processBuilder = new ProcessBuilder(command);`

试试这个命令 -

git log --author="NAME" --since="2015-06-22" 

添加 --oneline 以仅获取提交哈希后跟提交消息。

注意:--after 和--since 选项是同义词。

您收到有关 usage 的错误,因为您使用的参数对 rev-list 无效,因此 git 将打印使用摘要。它返回的第一个词是 usage,它正在抱怨。

$ git rev-list --since=2015-06-22 --pretty=oneline
usage: git rev-list [OPTION] <commit-id>... [ -- paths... ]
  limiting output:
    --max-count=<n>
    --max-age=<epoch>

...等等。

根据您当前的尝试,我了解到您正在尝试查找某个日期之后的提交,并且 return 每行一个。由于您使用的是 rev-list 而不是 log,您可能需要一个提交对象列表,而不是完整的日志条目。

您的命令的主要问题是 rev-list 需要提交 ID 或其他参考作为其起点,而您没有提供。很简单,直接指向HEAD.

这将为您提供从 HEAD 到指定日期的提交 ID。

git rev-list --since=2015-06-22 HEAD

或在您用于 Java、

的语法中指定
command=new String[] {"git", "rev-list", "--since=2015-06-22", "HEAD"};