Git之协同开发
Github之协同开发
一、协同开发
1、引子:假如三个人共同开发同一份代码,每个人都各自安排了任务,当每个人都完成了一半的时候,提交不提交呢?
要提交,提交到dev吗,都上传了一半,这样回家拿出来的代码根本跑不起来。所以,
为每一个人创建一个分支,各自都在各自的分支上写代码,互不影响。
很短时间内大家暂时先合并一次,不然冲突太多了。但是这个分支不是dev,而是review分支,当老大看完没问题之后再合并到dev分支。
二、协同开发的两种方式:
方式一:创建协作者和组织:
方式二:添加组织
三、创建完之后就开始写代码了

先创建了一个dev的分支
git branch dev
git checkout dev
git push origin dev
又创建了一个review的分支
git branch review
gir checkout review
git push origin review
创建自己的分支
git branch haiyan
git branch xiaxiao
git branch sk git checkout sk
git pull origin review

假如现在有两个人在进行开发

海燕创建了个文件
git branch haiyan
git checkout haiyan
touch a.py
ls
git add .
add commit -m '代码初始上线'
git push origin haiyan
ls
vim a.py #写了一些内容
git add .
add commit -m '小功能开发完毕'
git push origin haiyan
#现在两人都写完了,开始合并和review进行合并了
git checkout review
git pull origin review #吧远程的review拉下来
#吧自己的合并发到review
git merge haiyan
ls
git status
git push origin review #再次写的时候
git pull origin review
宋康创建了个文件
git branch sk
git checkout sk
touch s.py
ls
git add .
add commit -m '到了新公司好激动啊'
git push origin sk
ls
vim s.py #写了一些内容
git add .
add commit -m '小开发完毕'
git push origin sk
#现在两人都写完了,开始合并和review进行合并了
git checkout review
#git pull origin review #如果先没有吧远程的review拉下来
#吧自己的合并发到review
git merge sk
ls
git status
git push origin review #这时候的review是最新的,那么海燕先提交了,完了她还得拉先来再合并一次
老大看了review分支,如果OK,可以放到dev分支进行测试,如果测试没有问题了
才放到master分支。
master分支:线上的版本,永远保证线上的版本,无论是回滚到哪都是能用的

两个面试题

1、你们公司的代码review分支怎么做?谁来做?
答:我们创建的review分支,我们小功能开发完之后,合并到review分支
交给老大(小组长)来看,
你组长不开发代码吗?
他开发代码,但是它只开发核心的东西,任务比较少。
或者抽出时间,我们一起做这个事情
2、你们公司协同开发是怎么协同开发的?
每个人都有自己的分支,阶段性代码完成之后,合并到review,然后交给老大看

四、GIT之忽略文件和ssh
当你提交代码的时候不要把所有的代码都提交,尤其是你自己的隐藏文件,还有pycharm自动生成的隐藏文件,
两个方式:
手动修改:在你add的时候不要把它添加进去就行了
自动修改 :需要改一下配置文件
vim . gitignore
/idea
touch a.py
touch b,py
不要.py了文件了,在编辑的时候写上*.py
认证的两种方式
1、通过http协议的
Https:
https://github.com/ugfly1210/git_projects.git
2、通过ssh的
SSH:
git remote add origin
git@github.com:ugfly1210/git_projects.git
创建秘钥
取到公钥
Git之协同开发的更多相关文章
- 用Git进行协同开发
用Git进行协同开发 问题场景描述 常常会遇到这样的协同场景:后台的同事和前端的同事需要共同开发一个新功能,而他们的代码相互依赖,所以需要不停地更新各自的代码进行联调. 对于这种场景,最简单的方式就是 ...
- Git项目协同开发学习笔记2:项目库开发协作相关命令
之前介绍了如何用git构建项目库及其后续操作的问题,但主要还是个人的操作问题,不太涉及到项目协作方面的问题,所以来说下这块.传送门在这里(后面的可以不用看了). 1.同步 首先就式同步问题:在项目协作 ...
- Git 之 协同开发
GitHub中多人协同开发和单人开发还是有点差别,协同开发一般有两种方式: 合作者,将其他用户添加到仓库合作者中之后,该用户就具有向当前仓库提交代码. 组织,创建一个组织,然后再该组织下可以创建多个项 ...
- Git项目协同开发学习笔记1:项目库开发基础git命令
这年头git基本都是项目开发的标配,之前刚好碰到了就花了两天时间系统学习了下.本文内容基本来自以下tutorial:Learn Git(建议直接去看原文,因为这个网站是有更新的).这个是我看过对git ...
- 使用Git进行协同开发
用了一段时间github,一直想用时间来对git的使用来做一段笔记,前段时间比较忙,现在沉下心来学习也是极好的. 很多项目开发会采用git这一优秀的分布式版本管理工具来进行项目版本管理.因为git的使 ...
- 【转】Android Studio中Git的配置及协同开发
一. Android Stutio配置git setting–>Version Control–>Git–>Path to Git executable中选择git.exe的位置 ...
- Android Studio中Git的配置及协同开发
转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51595096 本文出自:[openXu的博客] 目录: 一 Android Stutio配置 ...
- git 入门教程之协同开发
前面我们已经介绍过远程仓库的相关概念,不过那时并没有深入探讨,只是讲解了如何创建远程仓库以及推送最新工作成果到远程仓库,实际上远程仓库对于团队协同开发很重要,不仅仅是团队协同开发的基础,也是代码备份的 ...
- 使用git和github进行协同开发流程
(本文假设各位已经对基本git的基本概念.操作有一定的理解,如无相关git知识,可以参考Pro Git这本书进行相关的学习和练习) 很多项目开发都会采用git这一优秀的分布式版本管理工具进行项目版本管 ...
随机推荐
- web开发(四) 一次性验证码的代码实现
在网上看见一篇不错的文章,写的详细. 以下内容引用那篇博文.转载于<http://www.cnblogs.com/whgk/p/6426072.html>,在此仅供学习参考之用. 其实实现 ...
- Linux_Shell基础
目录 目录 查看系统中可以使用的shell 重定向 管道 变量 export指令与echo的不同 算术运算符 用户个性化系统变量文件 通配符 引号 文件比较运算符 查看系统中可以使用的shell ca ...
- 无界面上(linux)生成测试报告(3)
无界面上(linux)生成测试报告 1.待jmx文件运行完成后,键入命令进入到jtl文件下: #cd testresult#bin目录下使用此命令,进入到jtl文件下 #jmeter -g pushG ...
- 详解git pull和git fetch的区别
前言 在我们使用git的时候用的更新代码是git fetch,git pull这两条指令.但是有没有小伙伴去思考过这两者的区别呢?有经验的人总是说最好用git fetch+git merge,不建议用 ...
- 四十一:数据库之SQLAlchemy之limlt、、slice、offset及切片
一:limit:限制每次查询的时候查询数据的条数二:slice:查一个区间的数据,slice(起,止)三:offset:限制查找数据的时候过滤掉前面多少条四:切片:对query对象切实获取想要的数据 ...
- SAS数据挖掘实战篇【六】
SAS数据挖掘实战篇[六] 6.3 决策树 决策树主要用来描述将数据划分为不同组的规则.第一条规则首先将整个数据集划分为不同大小的 子集,然后将另外的规则应用在子数据集中,数据集不同相应的规则也不同 ...
- 64位编译器下,将指针转换成UINT32,不需要修改编译选项的编码方式
一些严格的64位编译器,将指针转换成UINT32,会报各种丢失精度的错误. 但很显然,有些时候,我们就是需要转换,且并不会真正丢失精度. 此时不需要修改编译选项的编码方式,有些用处了 示例如下: un ...
- LeetCode.989-数组形式的整数做加法(Add to Array-Form of Integer)
这是悦乐书的第371次更新,第399篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第233题(顺位题号是989).对于非负整数X,X的数组形式是从左到右顺序的数字数组.例 ...
- Scratch少儿编程系列:(十一)Scratch编程之简单见解
一.Scratch官网的说明 With Scratch, you can program your own interactive stories, games, and animations ...
- [JavaScript] console.log只在查看时才会读取这个打印的对象,并把此刻相关属性和值显示出来
/** * 写个函数解决console.log只在查看时才会读取这个打印的对象,并把此刻相关属性和值显示出来 * @param arg */ const log = function (...ar ...