本文共 1033 字,大约阅读时间需要 3 分钟。
git的服务器端(remote)端包含多个repository,每个repository可以理解为一个项目。而每个repository下有多个branch。"origin"就是指向某一个repository的指针。服务器端的"master"(强调服务器端是因为本地端也有master)就是指向某个repository的一个branch的指针。
这是服务器端(remote)的情况:
而在本地电脑(local)上:"master"就是指向刚刚从remote server传到本地的副本branch。$git push A B:C 其中A和C是分别remote端的一个repository的名字和branch的名字,B是本地端branch的名字
意思是把本地的B推送到remotes/A/C下。当B=C时可以直接省略为:git push A B。比如:
"git push origin master:master" 可以直接省略为"git push origin master".
origin指向的是repository,且可以有多个不同的(origin2,origin3...),master只是这个repository中默认创建的第一个branch。当你git push的时候因为origin和master都是默认创建的,所以可以这样省略,但是这个是bad practice,当换一个branch再git push的时候,有时候就纠结了
git remote -v
你会看到控制台输出
origin https://github.com/user1/myRepository.git (fetch)origin https://github.com/user1/myRepository.git (push)
也就是说git为你默认创建了一个指向远端代码库的origin(因为你是从这个地址clone下来的)
总结来讲,顾名思义,origin就是一个名字,它是在你clone一个托管在Github上代码库时,git为你默认创建的指向这个远程代码库的标签, origin指向的是repository,master只是这个repository中默认创建的第一个branch。当你git push的时候因为origin和master都是默认创建的,所以可以这样省略,但是这个是bad practice,因为当你换一个branch再git push的时候,有时候就纠结了
转载地址:https://loongembedded.blog.csdn.net/article/details/89494439 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!