Does rebasing actually help with two people?
Marginally. The real value of rebase is a readable history when many branches land per day. With two people the cost of the occasional botched rebase usually exceeds the benefit, so merge and squash on the way in is a calmer default.
The bug exists now and did not three months ago. Faster way than reading diffs?
git bisect run with a script that exits non-zero on failure. Twelve builds cover three months of daily commits, and the script means you can walk away while it works.
A 400 MB file is in the history. Removing it from HEAD did not shrink the repo.
It cannot: the object still lives in history. git filter-repo --strip-blobs-bigger-than 10M rewrites it out, after which everyone must reclone. Add the pattern to .gitignore in the same change, otherwise it comes back in a week.
Does this still hold if I am working alone?
It gets easier, not harder. A fair share of the difficulty is coordination, and that disappears. What remains is remembering your own decisions, which is what writing them down is for.