我在硬盘驱动器(本地)上克隆的USB密钥上有一个回购(来源)。 我将“起源”移至NAS并成功测试了从此处克隆它的过程。

我想知道是否可以在“本地”设置中更改“源”的URI,以便它现在可以从NAS而不是从USB密钥中提取。

现在,我可以看到两种解决方案:

  • 将所有内容推送到usb-orign,然后再次将其复制到NAS(由于对nas-origin的新提交,这意味着很多工作);
  • 在“本地”中添加新的遥控器,然后删除旧的遥控器(我担心会破坏我的历史记录)。

#1楼

git remote -v
# View existing remotes
# origin  https://github.com/user/repo.git (fetch)
# origin  https://github.com/user/repo.git (push)

git remote set-url origin https://github.com/user/repo2.git
# Change the 'origin' remote's URL

git remote -v
# Verify new remote URL
# origin  https://github.com/user/repo2.git (fetch)
# origin  https://github.com/user/repo2.git (push)

更改遥控器的URL


#2楼

您可以

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

(请参阅git help remote ),也可以只编辑.git/config并在那里更改URL。 除非您做一些非常愚蠢的事情,否则您不会失去历史记录的危险(并且,如果担心,只需复制一份您的回购协议,因为您的回购协议就是您的历史记录。)


#3楼

git remote set-url origin git://new.location

(或者,打开.git/config ,查找[remote "origin"] ,然后编辑url =行。

您可以通过检查遥控器来检查其是否有效:

git remote -v
# origin  git://new.location (fetch)
# origin  git://new.location (push)

下次按下时,您必须指定新的上游分支,例如:

git push -u origin master

另请参阅: GitHub:更改遥控器的URL


#4楼

git remote set-url {名称} {url}

例如) git remote set-url origin https://github.com/myName/GitTest.git


#5楼

  1. 在gitbash上使用命令删除原点git remote rm origin
  2. 现在使用gitbash添加新的原点git remote add origin (从项目存储库中的位存储桶中复制HTTP URL)完成

#6楼

在Git Bash中,输入命令:

git remote set-url origin https://NewRepoLink.git

输入凭证

完成


#7楼

如果您克隆了本地文件,则本地文件将自动包含在内,

克隆它的远程URL。

您可以使用git remote -v检查它

如果您要进行更改,

git remote set-url origin https://github.io/my_repo.git

这里,

来源-您的分支

如果您想覆盖现有分支,您仍然可以使用它。它将覆盖您现有的分支...

git remote remove url
and 
git remote add origin url

为了你...


#8楼

如果您使用的是TortoiseGit,请按照以下步骤操作:

  1. 转到本地结帐文件夹,然后右键单击以转到TortoiseGit -> Settings
  2. 在左窗格中,选择Git -> Remote
  3. 在右侧窗格中,选择origin
  4. 现在,将URL文本框的值更改为新的远程存储库所在的位置

您的分支和所有本地提交将保持不变,并且您可以像以前一样继续工作。


#9楼

切换远程URL

打开终端。

步骤: -将当前工作目录更改为本地项目。

第二步: -列出您现有的遥控器,以获取要更改的遥控器的名称。

git remote -v

origin  https://github.com/USERNAME/REPOSITORY.git (fetch)

origin  https://github.com/USERNAME/REPOSITORY.git (push)

使用git remote set-url命令将远程URL从HTTPS更改为SSH。

第三步: git remote set-url origin git@github.com:USERNAME/REPOSITORY.git

第四步: -现在验证远程URL已更改。

git remote -v验证新的远程URL

origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
origin  git@github.com:USERNAME/REPOSITORY.git (push)

#10楼

更改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

有关详细信息,请参见手册页。

如果您使用的是旧版本,请尝试以下操作:

需要注意的是,这仅适用于同一台服务器,只是名称不同。

假设新的主机名是newhost.com ,旧的主机名是oldhost.com ,则更改非常简单。

在工作目录中编辑.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 origin; git push origin; gitxgit pull origin; git push origin; gitx一切似乎井井有条。 是的,我知道混入git内部结构是不好的形式。


#11楼

我工作:

git remote set-url origin <project>

#12楼

故障排除 :

尝试更改遥控器时,您可能会遇到这些错误。 没有这样的远程“ [名称]”

此错误意味着您尝试更改的遥控器不存在:

git remote set-url sofake https://github.com/octocat/Spoon-Knife致命:没有这样的远程“ sofake”

检查您是否正确输入了远程名称。

参考: https : //help.github.com/articles/changing-a-remote-s-url/


#13楼

要检查git远程连接:

git remote -v

现在,将本地存储库设置为远程git:

git remote set-url origin https://NewRepoLink.git

现在使其成为上游或推送使用以下代码:

git push --set-upstream origin master -f


#14楼

您有很多方法可以做到这一点:

安慰

git remote set-url origin [Here new url]

只需确保已在存储库所在的位置将其打开即可。

设定档

它放置在.git / config(与存储库相同的文件夹)中

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
[remote "origin"]
    url = [Here new url]  <------------------------------------
...

龟龟

然后,只需编辑URL。

源树

  1. 单击工具栏上的“设置”按钮以打开“存储库设置”窗口。
  2. 单击“添加”以将远程存储库路径添加到存储库。 将打开“远程详细信息”窗口。
  3. 输入远程路径的名称。
  4. 输入远程存储库的URL /路径
  5. 输入远程存储库的托管服务的用户名。
  6. 单击“确定”添加远程路径。
  7. 返回“存储库设置”窗口,单击“确定”。 现在应该在存储库中添加新的远程路径。
  8. 如果您需要编辑已经添加的远程路径,只需单击“编辑”按钮。 应该将您定向到“远程详细信息”窗口,您可以在其中编辑远程路径的详细信息(URL /路径/主机类型)。
  9. 要删除远程存储库路径,请单击“删除”按钮

参考 支持


#15楼

将远程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-agent自动执行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

#16楼

对于那些想要从Visual Studio 2019进行此更改的人

打开团队资源管理器(Ctrl + M)

主页->设置

Git->存储库设置

遥控器->编辑