I hear you, but these are solve-able human problems, not code problems:
Manager: Jose revert your commit, thanks.
Jose: okay, it’s been reverted, I won’t do that again, thanks for explaining to me why exactly what I did was the wrong thing to do.
I’ve had this exact conversation about this topic at least a half dozen times over the last decade.
When it comes to legacy code, almost all auto formatting tools I’ve used allow you to ignore whole directories and files, which can be very handy for legacy areas of the codebase not yet ready for this transition.
As for scenarios where large rewrites are necessary, it’s best to separate from any actual work, so the blast radius is focused, and that commit can be marked properly using .git-blame-ignore-revs which completes fixes the history issues that are common amongst those who don’t know what they are doing.
Definitely a painful process it can be, but it’s better to fight this battle than it is to try and get 1,000 humans to agree on something as vague as “style”
I hear you, but these are solve-able human problems, not code problems:
Manager: Jose revert your commit, thanks. Jose: okay, it’s been reverted, I won’t do that again, thanks for explaining to me why exactly what I did was the wrong thing to do.
I’ve had this exact conversation about this topic at least a half dozen times over the last decade.
When it comes to legacy code, almost all auto formatting tools I’ve used allow you to ignore whole directories and files, which can be very handy for legacy areas of the codebase not yet ready for this transition.
As for scenarios where large rewrites are necessary, it’s best to separate from any actual work, so the blast radius is focused, and that commit can be marked properly using .git-blame-ignore-revs which completes fixes the history issues that are common amongst those who don’t know what they are doing.
Definitely a painful process it can be, but it’s better to fight this battle than it is to try and get 1,000 humans to agree on something as vague as “style”