git 常用情景示例

2018-07-08  本文已影响22人  7ccc099f4608

git 初始化

git init  // git初始化
git pull -u origin master

git 第一次提交

git touch a.txt
vi a.txt  // 并在其中写入  第一次编辑

git add . 
git commit -m "第一次编辑"

git 新建一个分支

git checkout -b "a_br"  // 新建并转到了分支a_br
vi a.txt   // 写入 b分支无冲突编辑

git远程提交到新分支

语法:git push origin 本地分支:远程分支:前后不能有空格),如果两分支相同,则可简写为git push origin 远程分支

git add .  // 有空格
git commit -m "b分支无冲突"
git push origin a_br:a_br   // 无空格,否则报错 error: dst ref refs/heads/a_br receives from more than one src.
测试简写
vi a.txt   // 写入 b分支第二次无冲突
git add .  // 有空格
git commit -m " b分支第二次无冲突"
git push origin a_br

git远程合并分支 a_brmaster

  1. 无冲突情况
git push origin a_br:master  // 线上合并分支到master

git pull origin master:master  // git pull 远程分支:本地分支,若相同则git pull origin master

2. 有冲突
先pull下来,进去修改冲突,再add、commit、push就好


  1. 拉取本地没有的分支(以develop分支为例),且不想更新/合并其他分支:
git checkout -b develop origin/develop
主要思想是先建新分支(-b),再复制线上分支
  1. merge代码,直接在主分支
git merge aBranch

然后红色的文件是有冲突的,并且用vim或者IDE进去后,能够发现

>>>>>>>>>Head
a
=========
b
<<<<<<<<<aBranch

其中,a是当前主分支的内容,b是aBranch的内容;正是二者的冲突导致了自动合并的失败,保留其一。
最后add、commit后push就好了

上一篇 下一篇

猜你喜欢

热点阅读