tree ffed86612e9f0ea804abab39f2c582507923b464
parent 70b98e25e1ff28064d3301306098a33949463f10
author Sam Elliott <selliott@lowrisc.org> 1589301186 +0100
committer Philipp Wagner <mail@philipp-wagner.com> 1590012762 +0100

[util] Fix Vendor Reset Revision

The vendor tool can fail if you try to `git-reset` to a branch that does
not exist.

When cloning a repository to create patches, we almost always need to
check out a branch or revision that is not `master`, but cloning a repo
only creates the `master` branch, so the `git-reset` can fail if given
an upstream branch name (which doesn't yet exist in the clone).

One issue we have is that we want to be able to pass either an upstream
branch name or a git revision sha, and we don't know which we have
(because they use the same key in the configuration). If we use
`git-checkout` instead of `git-reset`, then the checkout operation will
create a local branch that matches the upstream branch of the same name
(if given a branch name), or will checkout a git revision sha if given
a sha.

This is the most minimal change that we can do, and means the vendor
tool does not have to guess when it should add the upstream prefix to
the branch name.

This ensures that the clone operation will not fail when refreshing
patches, but also if a non-master branch is specified in the vendor
configuration.

Signed-off-by: Sam Elliott <selliott@lowrisc.org>
