tj / git-extras

GIT utilities -- repo summary, repl, changelog population, author commit percentages and more
MIT License
17.3k stars 1.21k forks source link

git-browse doesn't check if a commit exists on upstream #1153

Open mattcen opened 1 month ago

mattcen commented 1 month ago

When using git-browse to generate a web link to a repo, it constructs a URL based on the commit at the HEAD of the local repo, but doesn't actually check if this HEAD exists on the remote. This means that if I have a local commit that I've yet to push, and I run git-browse, it will fail because the remote end doesn't know about the commit the URL references.

Ideally, we should test whether the commit exists upstream first, using:

git branch --remotes --contains "${commit_or_branch}" 2>/dev/null | grep -q "\<${remote}\>/"

Which will exit non-zero if there's no remote ref for this commit. We could then display an error to the user.

spacewander commented 1 month ago

LGTM. Would you submit this change?

mattcen commented 1 month ago

Sure. See #1155