ExternalProject: investigate a git clean-based checkout strategy
The following discussion from !4239 (merged) should be addressed:
Should this do
git cleangymnastics first?
git clean -ffdx git submodule foreach git clean -ffdx git checkout -f $tag git submodule update --recursive --init
Hrm. I wish there were a single command do do that stack. Maybe this can be a followup and/or another strategy.
This likely warrants a new checkout strategy (a la !4239 (merged)). Though with such a strict strategy, maybe using a tarball instead of a git checkout is preferable anyways. Using git does make it easier to bump versions though. shrug