从git服务器拔出后,我正在尝试获取所有已更改文件的列表。我不需要任何特定的代码部分,只需要一个文件列表(有一些指示,表示它已被添加,删除或更改)。
我首先看了一下使用git log,但这显然只返回上次提交的信息:
git log --name-status --max-count=1 --pretty=format:""
由于这显然只是从拉取的最后一次提交中获得了更改,我正试图找到一种方法来获取所有更改(拉数几乎总是存在于多次提交中)。
这有什么命令吗? (我正在与PHP的Git进行交互,顺便说一句)
答案 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