如何更改Git 远程的URL

时间:2020-03-05 15:25:38  来源:igfitidea点击:

Git remote是一个指针,它指向通常托管在远程服务器上的存储库的另一个副本。

在某些情况下,例如当远程存储库迁移到另一个主机时,我们需要更改远程URL。

本教程说明了如何更改Git远程存储库的URL。

更改Git Remote的URL

每个Git存储库可以链接零个或者多个Git远程站点。
克隆存储库时,远程名称会自动设置为来源,并指向我们从中克隆的存储库。
如果我们在本地创建存储库,则可以添加一个新的remote。

远程服务器可以指向托管在Git托管服务(例如GitHub,GitLab和BitBucket)上的存储库,也可以指向私有Git服务器。

请按照以下步骤更改遥控器的URL:

  • 转到存储库所在的目录:
cd /path/to/repository
  • 运行“ git remote”以列出现有的远程服务器并查看其名称和URL:
git remote -v

输出将如下所示:

origin	https://github.com/user/repo_name.git (fetch)
origin	https://github.com/user/repo_name.git (push)
  • 使用“ git remote set-url”命令,后跟远程名称和远程URL:
git remote set-url <remote-name> <remote-url>

远程URL可以以HTTPS或者SSH开头,具体取决于我们使用的协议。如果未指定协议,则默认为SSH。该URL可以在Git托管服务的存储库页面上找到。如果我们要更改为HTTPS,则该URL将类似于:

https://gitserver.com/user/repo_name.git

如果我们要更改为SSH,则网址将如下所示:

[email protected]:user/repo_name.git

例如,要将“来源”的URL更改为“ [email protected]:user/repo_name.git”,请输入:

git remote set-url origin [email protected]:user/repo_name.git
  • 通过列出远程连接来验证远程URL是否已成功更改:
git remote -v

输出应如下所示:

origin	ssh://[email protected]:user/repo_name.git (fetch)
origin	ssh://[email protected]:user/repo_name.git (push)

我们已经成功更改了远程存储库的URL。

'git remote set-url'命令的作用是使用指向远程存储库的新URL更新存储库'.git/config'文件。

.git /配置

...
[remote "origin"]
        url = [email protected]:user/repo_name.git
        fetch = +refs/heads/*:refs/remotes/origin/*

我们还可以通过使用文本编辑器编辑“ .git/config”文件来更改远程存储库的URL。

但是,建议使用git命令。