Version control - the most text-oriented part of the whole deal. Files of ASCII, tracked by LINE???
Instead track definitions, APIs, formal argument structure, constraints! Make all that and more part of the 'code' and track its changes and meta-changes. And check it against the product and test plan too!
I imagine a schema capturing the semantics of a program with an audit trail, checkpoints of consistent state, reports that flag contradictions and incomplete subtrees etc.
Instead I get "automatic merge tools" that shuffle my changes into somebody else's like a dealer at Vegas.