Git 中的 origin 是什么意思呢

经常使用 Git,但是突然发现不知道在Git中经常使用到的origin是什么意思,这两天突然想明白了

当你打算将本地的代码推送的远程的Git仓库的时候,通常会有两种方法:

  1. 在远程创建一个仓库,git clone到本地,然后完成代码之后执行如下的命令就好了

    git add .
    git commit -m "Initial commit"
    git push -u origin master
    
  2. 进入本地代码的根目录,然后执行一系列如下的命令

    git init
    git remote add origin https://xxx.git
    git add .
    git commit -m "Initial commit"
    git push -u origin master
    
    那命令中的这个origin是什么意思呢

    后来突然就明白了,这个origin其实就是你要添加的这个远程仓库http:://xxx.git的名称,也就是说,当你执行git remote add origin https://xxx.git之后就会在本地的.git文件的配置中添加一条originhttps://xxx.git对应关系的记录,类似于这种

    origin: https://xxx.git
    

    为了证实这步,我就到.git目录中查看,果然有一个./git/config文件,在文件中就有一条为

    [remote "origin"]
    url = https://xxx.git
    fetch = +refs/heads/:refs/remotes/origin/
    

    这样就是为了简化执行git的操作,比如,推送代码的时候执行git push origin master 就好了,不然的话你就得把命令变为git push https://xxx.git master

    那为什么是origin呢?

    这是因为origin这个是git 默认的,当你执行git clone https://xxx.git的时候,就会自动为你创建一条名为origin,值为https://xxx.git的记录

    当然,你也可以更改这个值,比如,你要添加远程仓库的时候,你可以换个名字,比如:

    git remote add kkk https://xxx.git
    

    这时就是会在.git/config中有这样的一条记录了

    [remote "kkk"]
    url = https://gitlab.wise-paas.com/WISE-PaaS-4.0-Ops/lincese-checker.git
    fetch = +refs/heads/:refs/remotes/kkk/
    

    但你在执行git操作的时候,就需要变成git push kkk master,所以,通常还是使用默认的好

你可能感兴趣的:(Git 中的 origin 是什么意思呢)