我在我的硬盘上(本地)克隆的USB键上有一个repo(起源)。我将“起源”转移到NAS,并成功测试了从这里克隆。
我想知道我是否可以在“本地”设置中更改“起源”的URI,所以它现在将从NAS中拖动,而不是从USB键。
到目前为止,我可以看到两个解决方案:
把一切推到USB起源,然后将其复制到NAS(这意味着由于NAS起源的新承诺而付出很多工作);添加一个新的远程到“本地”并删除旧的(我担心我会打破我的历史)。
我在我的硬盘上(本地)克隆的USB键上有一个repo(起源)。我将“起源”转移到NAS,并成功测试了从这里克隆。
我想知道我是否可以在“本地”设置中更改“起源”的URI,所以它现在将从NAS中拖动,而不是从USB键。
到目前为止,我可以看到两个解决方案:
把一切推到USB起源,然后将其复制到NAS(这意味着由于NAS起源的新承诺而付出很多工作);添加一个新的远程到“本地”并删除旧的(我担心我会打破我的历史)。
当前回答
正如我们在这里看到的那样,
$ git remote rm origin
$ git remote add origin git@github.com:aplikacjainfo/proj1.git
$ git config master.remote origin
$ git config master.merge refs/heads/master
其他回答
更改主机为 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)一切似乎顺序。
如果你在Linux或Mac上有 sed/grep,它也很容易改变,而不会失去联系。
最近我做了这个改变我的用户名所有我的存储库在配置中本地,但我已经做到了相同的方法,远程线也完全。
VARIABLE_FIND='old'; VARIABLE_REPLACE='new'; path_name='~/PycharmProjects/*/.git/'; grep -rl --include=config "${VARIABLE_FIND}" "${path_name}" | xargs sed -i "s|${VARIABLE_FIND}|${VARIABLE_REPLACE}|g"
要替换整个线路,在那里有一个比赛,你可以这样做:
VARIABLE_FIND='someneedle'; VARIABLE_REPLACE='somenewvalue'; path_name='/home/*/' grep -rl --include=config "${VARIABLE_FIND}" "${path_name}" | xargs sed -i "/${VARIABLE_FIND//\//\\/}/c\\${VARIABLE_REPLACE}" ;
参考: 用 Sed 替换包含一条线的整个线
这是非常容易和简单的;只需遵循这些指示。
要添加或更改远程起源: git 远程设置 URL 起源 githubrepurl 查看您目前在本地存储库中有哪些远程 URL: git 远程显示起源
此分類上一篇: git remote set-url {name} {url}
git remote set-url origin https://github.com/myName/GitTest.git
您可以通过编辑 config 文件来更改 URL。
nano .git/config
然后编辑 url 字段并设置新的 url. 保存更改. 您可以使用命令验证更改。
git remote -v