如何列出所有未更改(已跟踪)的文件?

9

我将一个旧的"git-image"解压到我的git仓库中,大部分文件都已更改。 我想知道哪些文件保持不变。 如何列出这些文件?

我想知道哪些文件没有被更改。如何列出这些文件?


可能是Make git status show unmodified/unchanged tracked files?的重复问题。 - Mureinik
文件集本身是否发生了变化? - Tim Biegeleisen
@Mureinik,好的,但是在那个重复的问题中哪里是正确的答案? - user3719454
1
我刚刚删除了我的 git ls-files --no-modified 的答案。正如你正确指出的那样,--no-modified 开关实际上什么也没做。抱歉! - Boldewyn
2个回答

12

我没有找到纯git的方法,但是通过一些bash命令可以实现:

( git ls-files --modified ; git ls-files ) | sort | uniq -u

解释

  • git ls-files 列出被 Git 跟踪的所有文件
  • git ls-files --modified 列出被 Git 跟踪的修改过的所有文件
  • 其余为一些 bash 脚本,用于从两个列表中删除重复项。

要显示修改和未修改的文件,类似于“git status”格式的相似想法,请参见此响应 - Joshua Goldberg

-1
也许,如果您解压缩一个归档文件,您可能不会使用git,而是使用unzip -u命令?它会回显所有已更新的文件名称,如果需要,您可以使用sed或其他工具提取列表...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接