- 任何一门学问,难得就是入门;而入门,就是要有一个完整的知识体系;一开始这个知识体系仅仅是一个个点,到后来就能成为一套完整的体系,知识的网越织越密 《从51初学者到电子工程师》 新手最好的办法就是站在巨人的肩膀上,减少试错 找到自己的贵人 勤奋搜索 大量输入信息构建自己的知识体系
当你从 GitHub 上 fork 一个仓库时,GitHub 会自动将你 fork 的仓库设置为你本地仓库的 默认远程仓库,并且这个默认的远程仓库名字就是 origin。所以,fork 下来的仓库,远程仓库的名称就默认是 origin,而且 git push 默认会推送到 origin。
而在你自己手动添加远程仓库的时候,如果 已经存在一个名为 origin 的远程仓库,Git 会阻止你再用相同的名字进行添加。这就是为什么你必须使用 不同的名字,比如 origin2 来添加第二个远程仓库。
关键点: 默认 origin:在 fork 的过程中,GitHub 会自动将你的 fork 仓库设置为本地仓库的 origin,并且所有的 git push 默认推送到 origin。 命名冲突:如果你在本地仓库中已经有了一个名为 origin 的远程仓库,你就不能再用 origin 添加第二个仓库。为了避免这个冲突,你只能给新的远程仓库起个不同的名字,比如 origin2。
你说的完全对!如果你新建的远程仓库 URL 不一样,当然可以继续使用 origin 作为远程仓库的名字。实际上,Git 并不要求远程仓库必须使用不同的名字,只要 URL 不同,它们就不会冲突。
那么,为什么你会被要求使用 origin2 呢?这其实是因为 Git 默认禁止了重命名(或重复使用)已经存在的远程仓库名字。你无法再使用已经存在的远程仓库名字(比如 origin)来添加新的仓库,除非你先删除或修改已有的 origin。
解释一下: 远程仓库名字:Git 不会阻止你使用多个不同 URL 的远程仓库,只要你给每个仓库起不同的名字。默认的远程仓库名字是 origin,你可以给其他远程仓库指定不同的名字(比如 origin2、upstream 等)。
为什么不能重复使用 origin:
已存在的 origin:如果本地仓库已经存在了名为 origin 的远程仓库,你就不能再次用 origin 作为新远程仓库的名字。 解决办法:你需要先删除当前的 origin,或者修改它的名字,然后再使用 origin 来绑定新的仓库。 我可不可以把远程仓库删了,并且本地文件夹也删了,这样就不用拉取,解绑等操作了吧