git diff knowledge