我在我的硬盘上(本地)克隆的USB键上有一个repo(起源)。我将“起源”转移到NAS,并成功测试了从这里克隆。
我想知道我是否可以在“本地”设置中更改“起源”的URI,所以它现在将从NAS中拖动,而不是从USB键。
到目前为止,我可以看到两个解决方案:
把一切推到USB起源,然后将其复制到NAS(这意味着由于NAS起源的新承诺而付出很多工作);添加一个新的远程到“本地”并删除旧的(我担心我会打破我的历史)。
我在我的硬盘上(本地)克隆的USB键上有一个repo(起源)。我将“起源”转移到NAS,并成功测试了从这里克隆。
我想知道我是否可以在“本地”设置中更改“起源”的URI,所以它现在将从NAS中拖动,而不是从USB键。
到目前为止,我可以看到两个解决方案:
把一切推到USB起源,然后将其复制到NAS(这意味着由于NAS起源的新承诺而付出很多工作);添加一个新的远程到“本地”并删除旧的(我担心我会打破我的历史)。
当前回答
移除远程
使用 git 远程 rm 命令从您的存储库中删除远程 URL。
$ git remote -v
# View current remotes
> origin https://github.com/OWNER/REPOSITORY.git (fetch)
> origin https://github.com/OWNER/REPOSITORY.git (push)
> destination https://github.com/FORKER/REPOSITORY.git (fetch)
> destination https://github.com/FORKER/REPOSITORY.git (push)
$ git remote rm destination
# Remove remote
$ git remote -v
# Verify it's gone
> origin https://github.com/OWNER/REPOSITORY.git (fetch)
> origin https://github.com/OWNER/REPOSITORY.git (push)
其他回答
导航到本地存储库的项目根,并检查现有远程:
git remote -v
如果您的存储库使用SSH,您会看到这样的东西:
> origin git@github.com:USERNAME/REPOSITORY.git (fetch)
> origin git@github.com:USERNAME/REPOSITORY.git (push)
如果您的存储库使用 HTTPS,您会看到这样的东西:
> origin https://github.com/USERNAME/REPOSITORY.git (fetch)
> origin https://github.com/USERNAME/REPOSITORY.git (push)
取决于 git 远程 -v 的输出,您可以以以下方式更改 URL:
在 SSH 的情况下,您可以从 REPOSITORY.git 更改 URL 到 NEW_REPOSITORY.git 如下:
$ git remote set-url origin git@github.com:USERNAME/NEW_REPOSITORY.git
而在 HTTPS 的情况下,您可以从 REPOSITORY.git 更改 URL 到 NEW_REPOSITORY.git 如下:
$ git remote set-url origin https://github.com/USERNAME/NEW_REPOSITORY.git
注意: 如果您已更改了 GitHub 用户名,您可以按照上述相同的过程更新与您的存储库相关的用户名的更改。
使用 gitbash git 远程 rm 起源命令删除起源 现在使用 gitbash git 远程 添加起源 添加新起源(从您的项目存储库中复制 HTTP 地址)完成
更改主机为 Git Origin 服务器
从: http://pseudofish.com/blog/2010/06/28/change-host-for-a-git-origin-server/
希望这不是你需要做的事情,我已经使用的服务器在一些 git 项目上合作,域名终止了,这意味着找到一个方式来迁移当地存储库以恢复同步。
更新: 感谢 @mawolf 指出,最近的 git 版本有一个简单的方式(发表于 2010 年 2 月):
git remote set-url origin ssh://newhost.com/usr/local/gitroot/myproject.git
如果你有更古老的版本,那就尝试一下:
在工作目录中编辑.git/config 文件,您应该看到如下:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://oldhost.com/usr/local/gitroot/myproject.git
更改 oldhost.com 到 newhost.com,保存文件,你已经完成了。
从我的有限测试(git pull 起源; git push 起源; gitx)一切似乎顺序。
对于我来说,接受的答案只在Fetch的情况下工作,但不是拖动。
git remote set-url --push origin new.git.url/here
此分類上一篇: fetch URL:
git remote set-url origin new.git.url/here
要更新 pull URL:
git remote set-url --push origin new.git.url/here
它会很好,你可以尝试这个
对于SSH:
命令: git 远程设置 URL 起源 <ssh_url>
例如: git 远程设置 URL 起源 git@github.com:username/rep_name.git
对于HTTPS:
命令: git 远程设置 URL 起源 <https_url>
例如: git 远程设置 URL 起源 https://github.com/用户名/REPOSITORY.git