How to define an alternative remote url for a git remote repository?

I’m using git-annex to manage my files. Some of my remotes are available using 2 or 3 methods, for example ssh and nfs, but the nfs access is only possible on my local network, of course. Then, git-annex chooses the fastest method to sync or get the files (nfs, if available, ssh instead, using scores to choose). For now, I define a remote per repository and per access method (example: server-by-ssh, server-by-nfs), but that’s not a really git-annex way to do the job, as it is not compliant with the numcopies option, which ckecks that the files in the annex are kept with enough replications (with my current method, many remotes are in fact the same folders on a hard drive).

Then, my question applies to both git and git-annex, since the remotes are added in git, not git-annex: I wonder if it is possible to define alternative url for a given remote.

  • How to hook to webpack-dev-server build?
  • Deploy website using Git/Gitolite
  • git tells me that my files are changed, but I can't see any difference
  • Git submodule vs Git subtree vs dependency manager CocoaPods
  • Ignoring change to a file which is part of a git repository
  • How can I “back out” a feature branch merge in Git?
  • I have tried to use the git remote set-url --add command, but it doesn’t really work as I would expect. Indeed, if the nfs url is not reachable, git hangs up and waits.

    Any idea?

  • How to merge changes to both branches
  • How to merge conflicted file in your branch only in git?
  • How to protect “master” branch in GitHub?
  • Phonegap - automatically including correct cordova
  • Get a graph/data that shows (last 1 year) on code checkins
  • pushed to bare repository even though it shows no errors, the changes didnt take effect
  • 2 Solutions collect form web for “How to define an alternative remote url for a git remote repository?”

    I got the answer from the git-annex forum, where I had asked a question similar. It doesn’t matter if there are many remotes pointing to the same repositories, using different accessing methods. Indeed, each repository gets an UUID when initialized by git-annex. Then, this UUID is associated to the remote when added and synced. Consequently, git-annex considers the different remotes that have the same UUID as a single repository.

    You can add remote as

    git remote add new-origin https://example.com/proj.git
    

    Change value of existing remote

    git remote set-url new-origin https://example-new.com/proj.git
    
    Git Baby is a git and github fan, let's start git clone.