Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
When running
gitconfig --local
, run it in subdirectories as well.
Summary: The advantage of local is it doesn't pollute global state, but the disadvantage is that the settings are not inherited by submodules. (This is a misfeature, in my opinion.) So whenever we set anything --local, we need to manually do it in all submodules as well. This isn't a perfect solution, since if new submodules are added later they won't get the setting -- we'd have to hook into `git p` or something for that -- but it's better than nothing! In particular, it fixes (modulo the caveat above) https://app.asana.com/0/31965416896056/172514774666235 and also https://app.asana.com/0/31965416896056/51708574715815 Update submodules recursively, and do a better job parsing `status` output. I wasn't doing recursive submodules before because I figured they typically weren't *our* code so there was no point in using our configs on them. But there's no harm either, and they *can* be code we care about, so let's just do it. Just use no-arg `split` so we ignore leading spcae and runs of whitespace. No-arg `split` is the best. Test Plan: I ran cd /tmp ~/khan/devtools/ka-clone/bin/ka-clone -p [email protected]:Khan/webapp cd webapp/intl/translations git config -l --local --includes | grep transport and saw it say 'git-bigfile.transport=s3'. On an old version of ka-clone, it did not say that. (same) (same) Reviewers: mroth, benkraft Reviewed By: benkraft Differential Revision: https://phabricator.khanacademy.org/D34584
- Loading branch information