3 ms·
The latter does happen at Google at least. But it requires tooling to reliably make the change (monorepo-aware refactoring tools, basically), and tooling to run
by jvolkman 5y ago
The latter does happen at Google at least. But it requires tooling to reliably make the change (monorepo-aware refactoring tools, basically), and tooling to run all affected tests. Such large changes at Google are often accompanied by a doc outlining the specific process and possible impacts of the change, and many times are given "global approval" by someone that has that ability rather than requiring individual approvals from each affected team.
- jsnell 5y agoThat's not true. The process for the large scale changes at Google is described in the "Sofware Engineering at Google" book[0]. Chapter 22 is all about it. There is tooling, yes, but the goal is exactly the opposite of trying to make a single commit across the whole codebase: > At Google, we’ve long ago abandoned the idea of making sweeping changes across our codebase in these types of large atomic changes. [0] https://abseil.io/resources/swe_at_google.2.pdf https://abseil.io/resources/swe_at_google.2.pdf