git 本地仓库与远程仓库 push 详解

2017-10-20  本文已影响0人  viviChen

在 kiwi 这边写代码一定会接触到 git,下面是我经常犯错的地方,写下来熟记于心。

步骤1:建立远程分支

在 gitlab 上建立一个分支(基于release分支)该分支属于远程分支
这个分支暂且命名为 <span style="color:green">yuancheng</span>

步骤2:建立本地分支

在本地仓库建立(关联于刚建立的远程分支的)本地分支 <span style="color:green">此时本地与远程建立联系</span>

// git checkout -b <local> <remote>
git checkout -b bendi yuancheng

有关 checkout 与 checkout -b 的区别
checkout -b 就是 当你 checkout 时并没有这个分支,于是它自动帮你创建了这个一个分支
checkout 没有-b 就是会提示你,亲亲,你没有该分支哟,你是要新建一个分支呢还是你输错了哟~

若只是在本地 git checkout -b bendi2 建立了分支,那么就缺少了与远程的关联,所以同时需要设置与远程分支的关联(名字都是随意的,可以相同)

// git branch --set-upstream <local> <remote>
git branch --set-upstream bendi2 origin/yuancheng2
// or of the same name
git branch --set-upstream debug origin/degug

或者关注 .git/config 下的文件

步骤3:提交内容

我一般习惯于在 vscode 上面进行提交,当然内容都是一样的,命令行如下

git add .
git commit -u 'xxxxx'

vscode 通道如下


步骤4:push到远程分支(<span style="color:red">经常犯错的地方</span>)

一般在最开始接触仓库时我们都将经常要用的仓库设置为了 origin ,没有设置的往下看,知道的请省略


// 格式: git remote add <name> <url>
git remote add origin xxxxxx.git
// 提示:一般大家约定俗成的叫 origin 这个名字

你曾经设置了 origin ,但是忘记了想查看的话

git remote show origin

有关 push 的补充
git push [repository] [refspec]
[repository] 输入目标地址 [refspec] 指定推送分支
git push -u origin master 若在执行命令时,制定了-u,那么下次推送时可以省略分支名称

完成!

<span style="color:green">遇到的报错:</span>

原因分析:你当前的分支与关联分支名字不匹配,推送关联分支到远程请使用 git push origin HEAD:xxx, 如果你要 push 的关联分支和远程分支名字相同直接使用 git push origin xxxxx

上一篇下一篇

猜你喜欢

热点阅读