问题
How do I exclude files & directories from git diff --no-index?
For example, I want to show the differences between two directories project1 & project2 while ignoring their top-level .git directories (project1/.git & project2/.git) and all their .DS_Store files.
回答1:
This is not exactly what you asked for, but it might give you the results you want: Add project2 as a remote of project1 and just git diff their HEADs.
git remote add other ../project2/.git
git fetch other
# Perform the diff
git diff other/HEAD
If your project2 is not already a Git repo, you can temporarily make it one (hat tip to Josiah Yoder for his comments):
# Set up project2 repo
cd ../project2
git init
git add .
# Add as remote from project1
cd ../project1
git remote add other ../project2/.git
git fetch other
# Perform the diff
git diff other/master
# Clean up
git remote remove other
cd ../project2
rm -r .git
来源:https://stackoverflow.com/questions/49969016/how-to-exclude-files-directories-from-git-diff-no-index