git-远程添加来源vs远程设置url来源

我创建一个新的存储库:

git initecho "# MESSAGE" >> README.mdgit add README.mdgit commit -m "first commit"

然后我想将我的提交推送到在github上创建的空远程存储库,因此我必须设置远程。

使用以下命令有什么区别?:

git remote add origin git@github.com:User/UserRepo.gitgit remote set-url origin git@github.com:User/UserRepo.git

最后我执行推送:

git push -u origin master

当我在git init之后调用git remote set-url origin时会发生什么?git remote set-url origin是否创建原点?如果原点在git init之后已经存在,那么在我的场景中使用这些命令没有区别,对吧?

1271375 次浏览

要添加新的远程,请在终端上使用git remote add命令,在存储库所在的目录中。

git remote set-url命令更改现有的远程存储库URL。

所以基本上,remote add是添加一个新的,remote set-url是更新现有的

下面用于添加一个新的遥控器:

git remote add origin git@github.com:User/UserRepo.git

以下用于更改现有远程存储库的url:

git remote set-url origin git@github.com:User/UserRepo.git

下面将您的代码推送到使用origin-u定义的远程存储库的master分支,让您将当前本地分支指向远程master分支:

git push -u origin master

文档

  • 当您运行git remote add origin git@github.com:User/UserRepo.git时,将创建一个名为origin的新远程。
  • 当您运行git remote set-url origin git@github.com:User/UserRepo.git时,git搜索名称为origin的现有远程并更改其远程存储库url。如果git无法找到名称为origin的远程,它会引发错误fatal: No such remote 'origin'

如果您要创建一个新的存储库,请使用git remote add origin git@github.com:User/UserRepo.git添加远程。

下面将重新初始化您的本地存储库;还清除远程存储库(即起源):

git init

然后在下面,如果它不存在,将创建“起源”:

git remote add origin [repo-url]

否则,您可以使用set-url子命令编辑现有的远程:

git remote set-url origin [repo-url]

此外,您可以检查现有的遥控器

git remote -v

希望这有帮助!

git remote add=>添加一个新的远程。

git remote set-url=>更新现有远程。


  1. add之后的远程名称是在该命令之前不存在的新远程名称。
  2. set-url之后的远程名称应该已经作为存储库的远程名称存在。

git remote add myupstream someurl=>我的上游远程名称不存在,现在用这个命令创建它。

git remote set-url upstream someurl=>上游远程名称已经存在,我只是更改它的url。


git remote add myupstream https://github.com/nodejs/node => **ADD** If you don't already have upstreamgit remote set-url upstream https://github.com/nodejs/node # => **UPDATE** url for upstream

您不能在#1之后调用#0因为#2命令不会创建源,但会更改现有的远程存储库URL

因此,命令git remote set-url仅在您克隆了存储库或手动添加了一个名为起源的远程时才有效。

您可以使用命令git remote -v检查远程,它将在名称后显示远程url,或者如果此命令给出错误,如fatal: Not a git repository (or any of the parent directories): .git,则存储库不存在,因此您必须使用命令git remote add添加源

1.git remote add

此命令用于添加新的远程,您可以在终端上的存储库目录中使用此命令。

git远程add命令接受两个参数:

  1. A远程名称,例如,起源
  2. 远程URL,例如https://github.com/user/repo.git

例如:

git remote add origin https://github.com/user/repo.git

2.git remote set-url

git远程set-url命令更改现有的远程存储库URL。

git远程set-url命令接受两个参数:

  1. 现有远程名称。例如,originupstream是两个常见的选择。
  2. A远程的新URL

例如,您可以使用git remote set-url命令将遥控器的URL从SSH更改为HTTPS。

git remote set-url origin https://github.com/USERNAME/REPOSITORY.git

您可以使用命令git remote -v验证远程URL是否已更改。

注:“起源”是一个约定,不是命令的一部分。“起源”是远程存储库的本地名称。您可以使用任何名称而不是“起源”。

例如:

git remote add myorigin git@github.com:user/repo.gitgit remote set-url myorigin https://github.com/user/repo.git

来自github的引用:远程添加远程设置url

试试这个:

git initgit remote add origin your_repo.gitgit remote -vgit status

1. git remote add origin git@github.com:User/UserRepo.git

  • 此命令是使用git init将git初始化到当前工作存储库后命令系列中的第二步。
  • 此命令仅表示"您正在添加远程存储库的位置,您希望在其中推送/拉取文件!!…"
  • 您的远程存储库可以在github、gitlab、bit的任何地方。
  • 这里origin是您的远程存储库的别名/备用名称,这样您就不必每次声明将使用此名称(起源)来引用您的远程时都键入远程的整个路径。这个名字可以是任何东西。
  • 要验证远程设置是否正确,请键入:git remote -v

git remote get-url origin

2. git remote set-url origin git@github.com:User/UserRepo.git

此命令意味着,如果在任何阶段您希望第一次更改存储库的位置(即,如果您在使用git add命令添加远程路径时出错),您可以使用上述命令轻松返回。

3. git push -u origin master

此命令只是将您的文件推送到远程存储库。Git有一个称为“分支”的概念,因此默认情况下,除非明确指定替代分支,否则所有内容都将推送到大师分支。

要了解存储库中所有分支的列表,请键入:git branch

如果您有现有的项目并且您想添加远程存储库url,那么您需要执行以下命令

git init

如果您想添加readme.md文件,那么您可以创建它并使用下面的命令添加它。

git add README.md

使用以下命令进行第一次提交

git commit -m "first commit"

现在您完成了所有本地存储库过程,现在如何添加远程存储库url?检查下面的命令这是用于ssh url的,您可以将其更改为https。

git remote add origin git@github.com:user-name/repository-name.git

如何推送您的第一次提交,请参阅下面的命令

git push -u origin master

这很简单如果您已经设置了远程源URL,那么您可以使用set-url命令进行更改,否则只需使用add命令

如果您还没有git repo,请使用git init启动一个

  1. git remote -v检查是否有任何远程已存在
  2. 如果,则使用git remote set-url origin git@github.com:User/UserRepo.git更改原点
  3. 如果,则使用git remote add origin git@github.com:User/UserRepo.git为您的存储库设置新的原点。
  4. 最后使用git push -u origin master将代码推送到远程并将上游(跟踪)引用添加到远程分支。

注:如果您使用-u标志,它适用于上游,它使您能够在即将到来的操作中简单地使用git pull而不是git pull origin <branch-name>