首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Git-Diff --没有索引,但是.gitignore

Git-Diff --没有索引,但是.gitignore
EN

Stack Overflow用户
提问于 2022-05-25 12:53:32
回答 1查看 39关注 0票数 0

在git工作树(签出副本)中,我想将当前工作复制树与另一个目录(位于外部)区分开来。

就像这样(也使用子目录进行快速比较):

代码语言:javascript
复制
git diff --no-index --stat -- $HOME/project/pink-blue/subdirectory \
                              $HOME/temp-copy/subdirectory

但是现在它显示了在外部路径下添加的文件。

虽然这首先是文档化的行为,但是如果将维护的.gitignore文件应用于忽略它将要处理的任何添加的文件,我会很高兴。

现在,这可能不是git-diff(1)用于--no-index的一个选项。但这是吗?

由于我所有的考验都是如此艰巨,所以我决定先提出这个问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-25 12:53:32

如果你错过了“你尝试了什么”(或者觉得它很差劲),那么在这里问这个问题,我终于得到了以下的想法:

与其从工作树扩展到其他子目录,不如告诉git工作树在那里呢?

代码语言:javascript
复制
git --work-tree=$HOME/temp-copy diff --stat -- subdirectory 

这需要我承诺干净(还是--cached ?)因此,这并不是我所想的100%,但是一个git diff --quiet应该在说谎之前打破它。

它还要求$HOME/temp-copy有一个名为subdirectory的子目录。情况就是这样,这可能很常见。

对于那些我不想被列出的未跟踪的文件来说,这是非常接近的,它们现在在.gitignore中被忽略了,不再出现了。

要列出“未分阶段”的/new文件,也可以:

代码语言:javascript
复制
git --work-tree=$HOME/temp-copy ls-files --others --exclude-standard subdirectory
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72378038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档