Git requires a `-f` flag to force adding files that are captured by the
`.gitignore` (hg does not need this). We need this because of changes
in bug 1894160 that requires vendoring to explicitly add `.egg-info`
files due to `.gitignore` and `.hgignore` changes. Since they are
captured by this `.gitignore`, we need to be able to forcibly add them.
We add the `force` flag to all `add_remove_files` to allow us to append
that flag when running the `GitRepository` variant. They are unused for
all other variants, but we need to maintain a consistent function
signature.
Note: Also moved up the hash file regeneration to happen earlier so that
it is automatically added to VCS instead of having to be done manually.
Differential Revision: https://phabricator.services.mozilla.com/D226064