首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将目录排除在两个独立存储库的git diff中

将目录排除在两个独立存储库的git diff中
EN

Stack Overflow用户
提问于 2018-04-03 17:50:47
回答 3查看 1.8K关注 0票数 2

我试图在两个独立的存储库之间做一个git。单独使用git diff ProjectA ProjectB是可行的,但我必须浏览.git目录中的所有差异。

我尝试过git diff ProjectA ProjectB -- . ':!.git'来排除.git目录,但是我得到了以下错误。

代码语言:javascript
运行
复制
Not a git repository
To compare two paths outside a working tree:
usage: git diff [--no-index] <path> <path>

我也尝试过git diff --no-index ProjectA ProjectB -- . ':!.git',但只收到了这样的消息:

代码语言:javascript
运行
复制
usage: git diff --no-index <path> <path>

在排除某些目录的同时,如何正确地区分两个不同的存储库?

EN

Stack Overflow用户

发布于 2018-04-03 17:56:12

在以这种方式使用git diff时,我不知道排除路径的方法。如果有可能排除路径,那么您已经在问题中使用的神奇签名(:!)可能就是它。更多关于人类词汇魔术签名的信息。

如果有任何帮助,您可以通过添加一个作为另一个的远程来区分每个回购的提交。

代码语言:javascript
运行
复制
cd ProjectA
git remote add ProjectB ../ProjectB
git fetch ProjectB
git diff <commit-or-branch-in-ProjectA> <commit-or-branch-in-projectB>

当您完成扩散时,您可以移除遥控器:

代码语言:javascript
运行
复制
git remote remove ProjectB

再深入一点,当git diff使用--no-index选项(隐式或显式)运行时,它会触发一个不同的代码路径。比较调用索引并提前返回。据我所知,索引并不称任何解析神奇路径规范的东西。

神奇的路径解析似乎是在上述代码路径返回之后发生的。具体来说,在比较中,有一个调用链 -> oid -> 改名 -> 路径规范 -> 项目,这似乎就是神奇的路径解析发生的地方。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49636305

复制
相关文章

相似问题

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