git - 如何为 git 远程存储库定义一个替代的远程 url?

标签 git git-annex

我正在使用 git-annex 来管理我的文件。我的一些 Remote 可以使用 2 种或 3 种方法使用,例如 ssh 和 nfs,但是 nfs 访问当然只能在我的本地网络上进行。然后,git-annex 选择最快的方法来同步或获取文件(nfs,如果可用,ssh 代替,使用分数来选择)。现在,我为每个存储库和每个访问方法定义了一个远程(例如:server-by-ssh,server-by-nfs),但这并不是真正的 git-annex 方式来完成这项工作,因为它不符合numcopies 选项,它检查附件中的文件是否保留了足够的复制(使用我当前的方法,许多远程文件实际上是硬盘驱动器上的相同文件夹)。

然后,我的问题适用于 git 和 git-annex,因为 Remote 是在 git 中添加的,而不是 git-annex:我想知道是否可以为给定的 Remote 定义替代 url。

我已经尝试使用 git remote set-url --add 命令,但它并没有像我预期的那样真正起作用。实际上,如果无法访问 nfs url,git 会挂断并等待。

有什么想法吗?

最佳答案

我从 git-annex forum 得到了答案,我在那里问了一个类似的问题。是否有许多 Remote 使用不同的访问方法指向相同的存储库并不重要。实际上,每个存储库在由 git-annex 初始化时都会获得一个 UUID。然后,此 UUID 在添加和同步时与远程关联。因此,git-annex 将具有相同 UUID 的不同 Remote 视为单个存储库。

关于git - 如何为 git 远程存储库定义一个替代的远程 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12051527/

相关文章:

git - 如何在 IntelliJ IDEA 中 rebase ?

git - VS 代码 : Command to view git remote changes?

git - 大文件支持 : Normal files and git annex files in the same repo on windows? git add fails with fatal: This operation must be run in a work tree

git annex 无法与 dropbox 建立 SSL 连接

git - 在计算机之间同步未提交的更改

linux - 从文件树中删除 git-annex 存储库

linux - 通过代理ssh错误使用Docker

git - 执行 Jenkins Pipeline : Caused: java. io.NotSerializableException : groovy. json.internal.LazyMap 时出现异常

git - 如何 git commit --amend 作为分支基础的提交

git - GitLab 是否通过 git-annex 或其他方式支持大文件?