Web lists-archives.com

Re: getting pull/push/fetch url

On Fri, May 17, 2019 at 3:30 AM clime <clime7@xxxxxxxxx> wrote:
> for my app, i need to be able get remote urls (fetch/pull/push) so
> that i can derive some information from those, e.g. pull url netloc
> from which i derive where other custom endpoints (binary file storage)
> related to the remote git repo is located. This is just one example. I
> am also using fetch url to store it into the composed package that i
> generate by the app.
> Now, the problem is that getting those urls (fetch/pull/push) doesn't
> seem to be an easy task. Currently i have the attached scripts to do
> that. But i noticed that older gits like 1.7 use origin as a fallback
> for pull url whereas the newer raise an error.
> My question is if there is a better way to determine the urls that
> would be backward compatible and easier than what i am doing right
> now.

Perhaps not a complete answer (and I'm sure people more familiar with
the topic can provide better direction), but have you tried querying
this information via higher-level commands rather than low-level
git-config? For instance, to get the name of the remote for a branch:

    git branch --list --format='%(upstream:remotename)' $BRANCH

and, to get the fetch URL for a remote:

    git remote get-url $REMOTE

or the push URL:

    git remote get-url --push $REMOTE