我在我的硬盘上(本地)克隆的USB键上有一个repo(起源)。我将“起源”转移到NAS,并成功测试了从这里克隆。

我想知道我是否可以在“本地”设置中更改“起源”的URI,所以它现在将从NAS中拖动,而不是从USB键。

到目前为止,我可以看到两个解决方案:

把一切推到USB起源,然后将其复制到NAS(这意味着由于NAS起源的新承诺而付出很多工作);添加一个新的远程到“本地”并删除旧的(我担心我会打破我的历史)。


当前回答

更改远程上流: git 远程设置 URL 起源 <url>


要添加更多升级: git remote 添加新位置 <url>

因此,您可以选择在哪里工作 git push 起源 <branch> 或 git push newplace <branch>

其他回答

更改远程 git URI 到 git@github.com 而不是 https://github.com

git remote set-url origin git@github.com:<username>/<repo>.git

例子:

git remote set-url origin git@github.com:Chetabahana/my_repo_name.git

优点是,当您使用 ssh 代理时,您可以自动进行 git push :

#!/bin/bash

# Check ssh connection
ssh-add -l &>/dev/null
[[ "$?" == 2 ]] && eval `ssh-agent`
ssh-add -l &>/dev/null
[[ "$?" == 1 ]] && expect $HOME/.ssh/agent

# Send git commands to push
git add . && git commit -m "your commit" && git push -u origin master

插入一个脚本文件 $HOME/.ssh/agent 让它运行 ssh-add 使用预期如下:

#!/usr/bin/expect -f
set HOME $env(HOME)
spawn ssh-add $HOME/.ssh/id_rsa
expect "Enter passphrase for $HOME/.ssh/id_rsa:"
send "<my_passphrase>\n";
expect "Identity added: $HOME/.ssh/id_rsa ($HOME/.ssh/id_rsa)"
interact

你可以

git remote set-url origin new.git.url/here

您也可以编辑.git/config 并在那里更改 URL。

你没有失去历史的危险,除非你做一些非常愚蠢的事情(如果你担心,只是做一个复印件,因为你的复印件是你的历史)。

您可以通过编辑 config 文件来更改 URL。

nano .git/config

然后编辑 url 字段并设置新的 url. 保存更改. 您可以使用命令验证更改。

git remote -v 

这是非常容易和简单的;只需遵循这些指示。

要添加或更改远程起源: git 远程设置 URL 起源 githubrepurl 查看您目前在本地存储库中有哪些远程 URL: git 远程显示起源

如果您的存储库是私人

从启动菜单中打开控制面板 选择用户帐户 在左手菜单中选择“管理您的认证” 删除与 Git 或 GitHub 相关的任何认证

参考