Git拉变更日志

时间:2011-06-30 13:01:59

标签: git logging commit pull

从git服务器拔出后,我正在尝试获取所有已更改文件的列表。我不需要任何特定的代码部分,只需要一个文件列表(有一些指示,表示它已被添加,删除或更改)。

我首先看了一下使用git log,但这显然只返回上次提交的信息:

git log --name-status --max-count=1 --pretty=format:""

由于这显然只是从拉取的最后一次提交中获得了更改,我正试图找到一种方法来获取所有更改(拉数几乎总是存在于多次提交中)。

这有什么命令吗? (我正在与PHP的Git进行交互,顺便说一句)

2 个答案:

答案 0 :(得分:26)

拉动后,ORIG_HEAD指的是您之前的位置,而HEAD指的是您现在所处的位置。所以ORIG_HEAD..表示拉入当前分支的更改。 --max-count=1意味着最后一次提交,而不是你想要的,就像你发现的那样。

您可能需要类似git diff --name-status ORIG_HEAD..的内容,它会输出单个字符的状态代码和每个文件的文件名更改,将所有提交聚合在一起。如果您希望按每次更改细分,则需要git log --oneline --name-status ORIG_HEAD..

之类的内容

答案 1 :(得分:0)

另一个命令是:

git pull --stat