首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我可以让git diff忽略权限更改吗?

我可以让git diff忽略权限更改吗?
EN

Stack Overflow用户
提问于 2018-04-09 02:49:18
回答 2查看 0关注 0票数 0

我不加注意地更改整个树的权限,并将该更改单独提交到其他内容更改中。

我用的是:

代码语言:txt
复制
tar -czf deploy.tar git diff --name-only v1 v2

要在两个标记之间生成带有修改过的文件的tar,问题是,由于权限的改变,几乎我的所有树都被列为已修改的树。

有没有办法让我知道git diff忽略那些只更改权限的文件?

EN

回答 2

Stack Overflow用户

发布于 2018-04-09 11:45:15

这将告诉git忽略权限:

代码语言:txt
复制
git config core.filemode false
票数 0
EN

Stack Overflow用户

发布于 2018-04-09 12:01:49

在故意从源代码文件(~26K文件)中删除执行权限(~26K文件)之后,我遇到了这个问题。然后,gitdiff说所有的文件都变了!用core.filemode回答对我没有帮助,因为这只会影响对你的工作进度的影响,而不是对回购中2次提交的影响。

答案是使用(大的、可怕的)Filter分支命令。

代码语言:txt
复制
git filter-branch -f --tree-filter 'find * -type f | xargs chmod 644 ' -- --all

当然,从你工作的起点开始,一定要先复制你的回购(cp-pr~/repo.git~/repo-orig.git或类似的),以防你需要重新尝试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008008

复制
相关文章

相似问题

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