Welcome "git blame" user. This massive commit changes the indent
style to "all spaces, 4 spaces per indent level, no tabs", and
also strips all trailing whitespace.
To assist you with navigating around this change, there are two
tags applied to the changes. This commit will be called "posttab"
and the one before it "pretab".
Chances are, you're trying to find the commit which changed a line,
and you've wound up here. You need to redo your "git blame" on
prior commits like this:
git blame pretab Cassandane/Instance.pm
(or whatever file you're trying to blame on)
This will get you the history of the file before we rewrote all
the whitespace.
If you have a branch which you want to convert all the commits
into the new spacing style for easy rebase/cherry-pick, then
you can run:
1) git checkout <mybranch>
2) git rebase pretab
3) git filter-branch --tree-filter tools/remove-tabs.pl pretab^..HEAD
4) git rebase posttab
NOTE the "pretab^". It is very important that you keep the ^ so that
this commit is the one that collects all the whitespace changes.
ALSO NOTE the tools/remove-tabs.pl script exists in the cyrus-imapd
repository, not this one.
This will rewrite all the commits on your branch to the new whitespace
style and then rebase it on top of the posttab commit. Since the
empty pretab commit will be rewritten to match posttab exactly by the
filter-branch process, the rebase will be clean and will skip the
pretab commit.
NOTE: you may need to make fixes at step 2 if your branch is old and
won't rebase cleanly on top of pretab. Step 3 is noisy and slow, but
should always run correctly.
ALSO NOTE: Cassandane is mostly perl, so this needed some massaging
that wasn't needed for Cyrus (such as significant leading tabs/trailing
whitespace in heredocs), and so the procedure documented above won't
be purely painless! Sorry!