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

[email protected]:ugfly1210/git_projects.git

创建秘钥

取到公钥

原文地址:https://www.cnblogs.com/ladder/p/10117183.html

时间: 2024-10-09 19:54:47

git协同开发的相关文章

Git协同开发操作+github

Git git是一个用于帮助用户实现版本控制的软件 第一阶段:在美国进修的日子 1.命令: git  init git  status  查看当前文件夹的状态   全部红色 git  add+文件名 对指定文件进行版本控制 当前文件名变绿色 git  add .     对指定文件夹下的所有文件及子目录进行版本控制  所有变绿 git  commit -m '详细的描述信息'   创建提交记录 git  log     查看所有提交记录  当前版本之前上一个版本的信息,之后的就没有 git  r

?git?-----协同开发,冲突解决 合并分支(项目中使用git)

使用基本流程 """ 1.开发前,拉一次远程仓库 2.工作区进行开发 3.将开发结果提交到本地版本库 - git status查看时没有待处理的事件 4.拉取远程仓库(每一次要提交远程仓库前必须先拉) 5.如果出现冲突,线下沟通(协商重新开发冲突文件),要重新走3.4步 6.没有冲突,提交到远程仓库 """ 协同开发 """ 1)所有人在一个分支上进行开发 - 通常开发分支名为dev 2)遵循git开发流程:先提交本

GIT 协同开发

Git 是一个开源的分布式版本控制系统,用于敏捷高效的处理任何项目的版本问题.Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件.与cvs,svn等版本管理工具不同,GIT采用的是分布式版本库的方式,不必服务器端软件的支持. GIT与SVN的主要区别: git 是分布式的, svn 不是 git 按照元数据的方式存储内容, svn 是按照文件的形式存储 git 和 svn 中的分支不同 git 没有全局版本号, svn 有 git 内容

企业团队使用Git协同开发的一般流程

流程大纲 一.代码编写 1.从主分支(master)上创建开发分支(dev). 2.切换到dev. 3.在dev上进行代码编写,并提交本地版本库. 注:一定不能直接在marster分支上修改代码 二.合并代码 1.切换到master. 2.从remote master拉取最新代码到local master. 3.切换到dev. 4.rebase master 到 dev. 5.如果有代码冲突,则解决. 三.提交代码 1.切换到master. 2.将dev的代码合并(merge)到master.

git团队开发

目录 git团队开发 git协同开发: git 版本冲突: 登陆业务: 线上项目 git团队开发 git协同开发: 流程: 1)拿公钥换源远程仓库源链接 - 成为项目开发者 2)根据源链接克隆远程仓库 - git clone 源地址 3)参与项目的团队开发,永远要遵循 先pull后push,在pull之前要将所有修改的代码提交到本地版本库 git 版本冲突: 方法: 1)当不同开发者协同开发,导致远程仓库与本地仓库的版本不一致,在pull远程仓库到本地仓库时,会出现版本冲突 2)两个仓库不同版本

Git学习笔记(三)远程库(GitHub)协同开发,fork和忽略特殊文件

远程库 远程库,通俗的讲就是不再本地的git仓库!他的工作方式和我们本地的一样,但是要使用他就需要先建立连接! 远程库有两种,一个是自己搭建的git服务器:另一种就是使用GitHub,这个网站就是提供Git仓库托管服务的,所以,只要注册一个GitHub账号,就可以免费获得Git远程仓库.友情提示:在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改).所以,不要把敏感信息放进去. 远程仓库的好处: 1.我们可以随时随地的与仓库建立连接,以实时存放我们开发的内容: 2.与他

用Git进行协同开发

用Git进行协同开发 问题场景描述 常常会遇到这样的协同场景:后台的同事和前端的同事需要共同开发一个新功能,而他们的代码相互依赖,所以需要不停地更新各自的代码进行联调. 对于这种场景,最简单的方式就是,这 2 个同事坐到一起,然后把 svn 当作一个共享代码的中转站来共享开发中的代码. 在这种方式下,大家各自写自己的代码,提交到 svn 上,然后用 svn up 获得对方的代码.在调试问题的时候,大家可能不停地更新代码,然后让对方用 svn up 来更新.最终,虽然开发能够顺利进行,但是 svn

华为如何实现基于Git的跨地域协同开发

跨地域开发的需求其实由来已久,在IT/互联网发展的早期就已存在,只不过限于当时网络环境的因素,无法在线上有效的完成协同工作,所以没法实际开展.而随着近十年网络的快速发展,跨地域协同开发线变得可能而且越来越普遍,尤其是在大公司内部. 同时随着行业的发展,敏捷开发模式的不断推广,软件交付和更新的速度越来越快,特别是移动互联网产品,几乎每天都有更新.所以在这种背景下,如何保证在跨地域协同开发场景下产品的快速迭代和交付成为各IT/互联网公司不断探索的内容. 跨地域协同开发的痛点 华为公司目前在全球各地共

HelloX项目github协同开发指南

概述 为了提高协同开发效率,HelloX项目已托管到github站点上. 依据眼下的开发进展,创建了下列几个子项目: HelloX操作系统内核项目:https://github.com/hellox-project/HelloX_Kernel.git HelloX操作系统GUI模块项目:https://github.com/hellox-project/HelloX_GUI.git 面向STM32的移植版:https://github.com/hellox-project/HelloX_STM3