I wonder what their branching strategy is like and how merges are gated with a single codebase of that size?
Need I go on? :-) You've replaced a relatively simple system of merge requests with some pseudo in-code versioning system controlled through boolean global variables.
I'll take feature branches any day of the week over that mess. The github model is far superior IMO.
I think feature toggles can be extremely useful, but still develop in a branch and merge after review/qa.
It hasn't become part of everyone's workflow yet, but it's pretty useful.
FB doesn't need to branch ... Gatekeeper (their A/B, feature flag system) really takes care of that concern logically
So git rebase -i will be more readable, while actual linear history is always gibberish.