git 分支管理——多人协作

一般一个项目有一个master主分支,还有一个develop开发分支。主要是在develop分支上协作开发,然后merge合并到master主分支上。

当从远程仓库克隆时,其实git clone操作将远程的master和本地的master分支对应起来了。并且默认的仓库名称是origin

多人协作

多人协作,我这里的多人协作是指,多个人在develop分支上开发,这时候大家往往会在masterdevelop分支上推送各自的修改。

模拟一个小伙伴克隆代码并在develop分支上更新提交代码

# 克隆代码
$ git clone ……
# 切换分支
$ git checkout develop
# 同步远程和本地分支内容
$ git pull origin develop # 更新修改代码 # 提交更新
$ git add .
$ git commit -m "first commit"
$ git push origin develop

这个时候,你的小伙伴已经向origin/develop分支推送了他的代码更新提交,而这个时候,你也同样更新了develop分支上的内容,并且也要推送提交。

这个时候远程develop分支上已经更新了小伙伴的推送,模拟你也对同样的文件做修改并推送

# 提交推送你的更新
$ git add .
$ git commit -m "other partner update code"
$ git push origin develop

这个时候发现推送会有错误。

这是因为你的小伙伴的最新提交和你试图推送的部分的提交有冲突。

解决办法很简单,按照git提示,先用git pull把最新的提交从origin/develop上抓取下来。,然后在本地合并,解决冲突,再推送。

执行命令:

# 同步远程版本库的更新,拉回分支更新到本地
$ git pull

git pull 相当于从远程获取最新版本并且merge到本地。(相当于git fetch和git merge的操作)

git fetch 相当于从远程获取最新版本到本地,不会自动merge

这个时候可以看到有冲突CONFLICT,解决本地冲突。

解决冲突之后,再提交就可以了。

在执行git pull 操作的时候,可能会出现以下一个vim窗口,

执行:q退出就可以了。

注意:每次在提交代码前最好都git pull合并一下,然后解决冲突,再推动提交

有道云笔记参考:

http://note.youdao.com/noteshare?id=37f3f8f3c37752db7c8fab7889880b94&sub=656272912B8A41F8ADDA38D8680D68C5

git 分支管理——多人协作的更多相关文章

  1. Git 分支管理 多人协作 远程仓库 补充

    当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了, 并且,远程仓库的默认名称是origin. 如果是本地仓库关联远程仓库 --- 要查看远程库的信息,用 ...

  2. [廖雪峰] Git 分支管理(3):分支管理策略

    通常,合并分支时,如果可能,Git 会用 Fast forward 模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制 禁用 Fast forward 模式,Git 就会在 merge 时生 ...

  3. Git学习总结(12)——多人开发 Git 分支管理详解

    1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对远程的Git仓库有一定的了解,嘿嘿.在这一篇博客中我们来在大家讲解一下Git 分支管理,这可以说是Git的又一大特点.下面我们就来学习 ...

  4. Git 分支管理详解

    大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 Cen ...

  5. Git工程开发实践(四)——Git分支管理策略

    A successful Git branching model https://nvie.com/posts/a-successful-git-branching-model/ Git工程开发实践( ...

  6. Git 分支管理是一门艺术

    转载: Git 分支管理是一门艺术 1 要确保:团队成员从主分支(master)获得的都是处于可发布状态的代码,而从开发分支(develop)应该总能够获得最新开发进展的代码. 2 "辅助分 ...

  7. git学习------>Git 分支管理最佳实践

    ps:本文转载于 : https://www.ibm.com/developerworks/cn/java/j-lo-git-mange/index.html Git 是目前最流行的源代码管理工具.大 ...

  8. 团队项目的Git分支管理规范

    原文地址: http://blog.jboost.cn/2019/06/17/git-branch.html 许多公司的开发团队都采用Git来做代码版本控制.如何有效地协同开发人员之间,以及开发.测试 ...

  9. Git 分支管理策略汇总

    原文链接: Git 分支管理策略 最近,团队新入职了一些小伙伴,在开发过程中,他们问我 Git 分支是如何管理的,以及应该怎么提交代码? 我大概说了一些规则,但仔细想来,好像也并没有形成一个清晰规范的 ...

随机推荐

  1. HDU 1565 方格取数(1) 轮廓线dp

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1565 方格取数(1) Time Limit: 10000/5000 MS (Java/Others) ...

  2. 作业6 团队项目之(开始第一个Sprint)

    一.模仿并超越--类似应用. 五个app:1.四则运算小学堂(500-999次下载 3.57M) 2.小学生算术练习(9000+次下载 232K) 3.小学生加减题生成练习工具(2万-3万次下载 1. ...

  3. BETA-2

    前言 我们居然又冲刺了·二 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 了解OpenCV下的视频参数及其调用方法 初步编码 接下来的计划 文档工作 速 ...

  4. T4模板_入门

    T4模板作为VS自带的一套代码生成器,功能有多强大我也不知道,最近查找了一些资料学习一下,做个笔记 更详细的资料参见: MSDN: http://msdn.microsoft.com/zh-cn/li ...

  5. UVAlive4255_Guess

    题目很好很有意思. 告诉你n个序列中,任意一个连续子序列的和与0相比较的结果. 构造一个满足条件的序列. 对于从x->y这一段的和,如果大于0,那么sum[x]>sum[y-1],显然我们 ...

  6. BZOJ5324 JXOI2018守卫(区间dp)

    对于每个区间[l,r],显然右端点r是必须放置守卫的.考虑其不能监视到的点,构成一段段区间.一个非常显然但我就是想不到的性质是,对于这样的某个区间[x,y],在(y+1,r)内的点都是不能监视到这个区 ...

  7. 016 Java中的动态代理

    作者:nnngu GitHub:https://github.com/nnngu 博客园:http://www.cnblogs.com/nnngu 简书:https://www.jianshu.com ...

  8. 【刷题】BZOJ 3524 [Poi2014]Couriers

    Description 给一个长度为n的序列a.1≤a[i]≤n. m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2.如果存在,输出这个数,否则输出0 ...

  9. BZOJ 2746: [HEOI2012]旅行问题

    2746: [HEOI2012]旅行问题 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 921  Solved: 291[Submit][Status ...

  10. Android应用自动更新功能的实现!

    Android应用自动更新功能的实现!http://blog.csdn.net/android_tutor/article/details/7015986 private static final i ...