不要以为你会git,你要知道,git不是只有commit和push

由于系统分析与设计的期末Project需要团队合作开发,因此在这里想谈谈GitHub团队项目合作开发的流程:

项目创建

项目负责人在GitHub上新建一个新的项目。

创建开发分支

master分支一般用来发布稳定版本,dev分支(开发分支)用来发布开发版本。

团队成员Fork项目到个人的仓库

点击右上角的Fork,并选择个人账号,Fork团队项目到个人仓库。

Clone项目到本地

打开git命令行,输入Fork项目的仓库地址,回车即可克隆到本地。

将本地分支切换为dev分支。

上面的操作完成后,你就可以在本地进行开发了。但是如果要将你修改完的代码合并到团队项目上,还需要进行下面的操作。

四、和团队项目保持同步

首先查看有没有设置upstream,使用git remote -v命令来查看。

如果没有显示upstream,则使用git remote add upstream 团队项目地址命令。

在发送PR之前先从源仓库拉取更新,执行git pull upstream dev命令。

有时在拉取的过程中会发生冲突(这张图片只作冲突展示),如下:

这里以readme.txt为例,解决冲突:

被红框框住的符号=======是冲突的分割线,<<<<<<< HEAD和分割线之间的是本地的文本,分割线和 >>>>>>> upstream/dev之间的是远程分支的文本。

你可以选择保留其中一个版本的文本,然后将三个冲突符号都删除。这样表示已解决冲突。如果你想同时保留两个版本,那么只需将冲突符号删除。

解决冲突后如下图所示:

最后使用 git add .和git commit -m 'fix conflict'命令提交修改,然后按照下面的步骤提交到自己的仓库上。

push修改到自己的项目上

使用git push命令将本地的修改同步到自己的GitHub仓库上。注意,在当前所在分支使用push,会push到与这个分支相关联的远程仓库分支。这里dev分支与origin/dev关联,因此push到GitHub上的dev分支。

请求合并到团队项目上

首先到你的GitHub上,进入你Fork的仓库里,点击红框处的Pull request创建PR。

下图左边红框,表示要合并到SYSUMongkeyEye/MonkeyEye项目的dev分支。下图右边红框,表示要从自己仓库的dev分支发起合并请求。点击Create pull request就可以发送合并请求。

以上操作结束后,团队成员的流程就结束了,最后一步交给团队项目负责人来完成。

团队项目负责人审核及同意合并请求

首先进入GitHub的团队项目仓库中,此时Pull requests显示当前项目有几个Pull request,点击进入查看。点击其中的一个Pull Request,查看修改的代码,如果认为没有问题,可以点击Merge pull request。

工作中总结的经验之git篇的更多相关文章

  1. git在工作中的用法总结-环境安装篇

    使用git有很长一段时间了 ,平时用到的时候都是直接google,经常用到的一些也记录在笔记中,但有时候笔记太多,实在是太乱了(其实是我太懒~ 哈?),找都要半天的时候还不如直接google,今天有空 ...

  2. git在工作中的用法总结-使用篇

    上一篇介绍了git的环境安装配置,本篇对git在工作中常用的用法进行总结,已满足大部分的日常工作需求,对于其他的一些git命令用法在今后使用到时我也会更新上来,文中如有错误,欢迎大家指出来,谢谢~ 一 ...

  3. 关于工作中Git相关的总结

    来公司一周多,主要是在熟悉各种环境和流程,而作为研发来讲,git的使用也是必不可少的.以前使用方式单一,几个人对着master,pull和push,来了之后发现其实在日常的开发中,git可以很方便的帮 ...

  4. 工作中常用Git指令操作

    常用Git指令总结 前阵子有几天好不顺,可谓是喝水都呛着,更何况被Git给呛着了,还不轻,哈哈.所以打算总结一下自己在工作使用到Git相关的东西以及和大家探讨使用GIt的心得体会.于是,关于Git的的 ...

  5. git 工作中常用命令(结合vscode学习git 命令)

    作为一名前端开发,大家在工作中常常使用什么开发工具呢,我觉得我首选的是vscode,他配合git使用起来非常方便. 工作中常用三个命令: git终端常使用: git add . git commit ...

  6. git工作中常用命令-工作中踩过的坑

    踩坑篇又来啦,这是我在工作中从git小白进化到现在工作中运用自如的过程中,踩过的坑,以及解决办法. 1.基于远程develop分支,建一个本地task分支,并切换到该task分支 git checko ...

  7. git工作中常用操作总结

    这篇文章主要记录下工作中常用的git操作.主要是对之前文章记录的问题做个总结,这个其实在idea中操作更加简单 别名配置 在敲git 命令时,其实可以使用别名,比如 commit可以配置为ci 下面是 ...

  8. Git-【技术干货】工作中Git的使用实践

    Git-[技术干货]工作中Git的使用实践 置顶 2019-09-17 21:02:16 web洋仔 阅读数 11444更多 分类专栏: Git   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  9. 工作中那些提高你效率的神器(第二篇)_Listary

    引言 无论是工作还是科研,我们都希望工作既快又好,然而大多数时候却迷失在繁杂的重复劳动中,久久无法摆脱繁杂的事情. 你是不是曾有这样一种想法:如果我有哆啦A梦的口袋,只要拿出神奇道具就可解当下棘手的问 ...

随机推荐

  1. mybatis源码阅读-执行器Executor(四)

    说明 前面二看到了 sqlSession最终是找到MapperStatement然后委托给Executer执行的 Executer到底做了什么 接口定义 public interface Execut ...

  2. hdu_1014_Uniform Generator_201310141958

    Uniform Generator Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  3. DataSource是一个java ee的标准接口和servlet一样,用于数据库连接池上

    1.DataSource是一个java ee的标准接口和servlet一样,用于数据库连接池上,需要第三方来具体实现. 2.DataSource是一个java ee的标准接口和servlet一样,用于 ...

  4. 35岁,成就寥寥,为时已晚?(I am 35 and I haven't achieved much in life. Is it too late?)

    今天无意中看到Quora上的一个问题: I am 35 and I haven't achieved much in life. Is it too late? 下面的一个排第二的回复我蛮喜欢的,直接 ...

  5. LA 4850 贪心

    感谢SF巨和WH巨的指导.. 首先,YY得到一个结论,罚值最大的最小值必定是按照截止时间排序得到的.然后,选一个任务插到其他位置,必定产生罚值最大值更大的情况,但有可能产生两个罚值最大情况和更小的情况 ...

  6. hdu 4932 Miaomiao&#39;s Geometry(暴力枚举)

    pid=4932">Miaomiao's Geometry                                                               ...

  7. C# winform 组件---- folderBrowserDialog与openFileDialog(转)

    C# winform 组件---- folderBrowserDialog与openFileDialog 2009-06-27 13:36 2153人阅读 评论(1) 收藏 举报 winformc#b ...

  8. bzoj1699

    st表 我还不会st表 f[i][j]表示[i,i+2^j)区间的最值 构造就像lca一样f[i][j]=f[i][j-1] f[i][j]=max(f[i][j-1],f[i+(1<<( ...

  9. 第3课 把文件存入Git文档库

    3-1  排除不需要加入文档库的文件 Git追踪文件的方式.Git会将文件和文件夹分成以下三类: 1.   被追踪的(tracked): 2.   忽略的(ignored): 3.   不被追踪的(u ...

  10. Tunnel Warfare(树状数组+二分)

    http://poj.org/problem?id=2892 题意:输入n,m.n代表数轴的长度,m代表操作数. D x: 摧毁点x Q x: 询问村庄x最左与最右没有被摧毁的点的距离 R  :恢复最 ...