News for hackers. Stuff that matters.
Re:Software Engineering at Google (2017) by hknd on Friday January 04, 2019 @07:07AM (#18823426)
You'll have to remember that all of those big companies have their tools and processes customized for their scale.

Example: Instead of branching you would just create a `changelist` (a commit, a set of changes to files) and work on that. You can show it to your colleagues. You can build and test it. You can send the id to anyone to have a look at it, or test it themselves. You can have multiple changelists depending on each other, without being commited.

This might be an interesting read for you: https://paulhammant.com/2014/01/08/googles-vs-facebooks-trun...

Re:Software Engineering at Google (2017) by hopler on Friday January 04, 2019 @07:56AM (#18823631)
You can use git forks or whatever for development. This philosophy just says that you only push to production environment from one standard head trunk.
Re:Software Engineering at Google (2017) by mcguire on Friday January 04, 2019 @12:02PM (#18825573)
"Google use Perforce for their trunk (with additional tooling), and many (but not all) developers use Git on their local workstation to gain local-branching with an inhouse developed bridge for interop with Perforce.

"Branches & Merge Pain

"TL;DR: the same

"They don’t have merge pain, because as a rule developers are not merging to/from branches. At least up to the central repo’s server they are not. On workstations, developers may be merging to/from local branches, and rebasing when the push something that’s “done” back to the central repo.

"Release engineers might cherry-pick defect fixes from time to time, but regular developers are not merging (you should not count to-working-copy merges)"