小团队如何利用git协作开发呢?对此我想总结一下自己的经验,#幸福里精装房选房指南#

也算是记个笔记吧。我想通过情景设定的方式,通俗易懂的解释效果会更好一点,也比较贴近实际开发过程。

在创建仓库时分好分支,对此不太了解的同学可以看下Git 小团队的协作 (一)

情景设定

人物角色权限小黑项目经理管理者小白项目成员开发者

流程

  1. 小黑创建项目
  2. 小白fork项目
  3. 小白clone他fork的项目到本地
  4. 小白从这个项目的 develop 分支分出一个功能分支:feature/login
  5. 小白在 feature/login 分支上完成任务后到代码托管平台建立Pull Request 提示小黑合并他的功能
  6. 小黑review小白的代码,没有问题,合并后关闭 Pull Request
  7. 小白看到自己代码被合并后,删除功能分支 feature/login 继续下一个功能

这里引申一下fork和clone的作用

fork

fork某人的项目之后,我们就能获得跟原仓库一毛一样的仓库。

clone

不用多说,克隆远程项目。

fork 和 clone 的区别

如果说你 clone 了别人的仓库,偷偷的写了一个BUG想搞原作者,想多了,你提交不到原作者的仓库。

如果说你fork了别人的仓库,你就能获得一个跟原作者一毛一样的仓库,这时你还想偷偷写以个BUG搞原作者,

这时你可以推送,但推送的是自己的克隆仓库,还是没有办法对原作者造成威胁,那怎么办呢?你要Pull Request,

让原作者主动合并才可以。

我们完整的走一边小黑和小白的协作过程

详细流程

小黑创建一个新项目:

$ git init

$ git remote add origin https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

$ git checkout -b develop

$ git push origin develop:develop

$ git push origin master

小白fork项目:

首先fork项目

然后

$ git clone https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

简单的说就是:

给fork配置远程库

使用

git remote -v

查看远程状态

确定一个将被同步给 fork 远程的上游仓库git remote add upstream https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

再次查看状态确认是否配置成功。

git remote -v

同步fork

从上游仓库 fetch 分支和提交点,提交给本地 master,并会被存储在一个本地分支

upstream/master

git fetch upstream切换到本地主分支(如果不在的话)

git checkout master

把 upstream/master 分支合并到本地 master 上,这样就完成了同步,并且不会丢掉本地修改的内容。

git merge upstream/master

如果想更新到 gitee 的 fork 上,直接

git push origin master 就好了,但是我们要提交到master分支上

最后进入gitee,进入fork的仓库,点击pull request,选择左边的要合并到的分支,右边选择自己仓库的分支,点击Create pull request发起合并请求,发起之前可以检查一下自己更改的内容

团队负责人审核,如果没问题通过即可,就这样一次协作流程完成。

我是ElyarAnwar,在技术的道路上摸爬滚打;

热爱生活,热爱技术;如果喜欢记得点赞;

#幸福里精装房选房指南#

#幸福里改善好房评测#

#幸福里采光好房评测#


git clone 分支_Git 小团队的协作 (二)相关推荐

  1. git hook分支_Git hook(钩子文件)机制

    githooks(5) NAME githooks - Hooks(钩子) used by git SYNOPSIS $GIT_DIR/hooks/* 简介 Hooks(钩子),是一些存放于$GIT_ ...

  2. 团队协助 开源项目_适合小团队的协作工具,良心开源项目管理工具

    3人左右的研发团队可以使用vika维格表来进行研发项目管理. 小团队的项目管理不复杂,假如在使用项目工具时,还要跳转到其他平台进行相关的信息处理,那这款项目工具,你就放心地拉黑它吧.综合大大小小项目工 ...

  3. git clone 分支

    普通克隆方式: git clone <远程仓库地址> 这种克隆方式默认是克隆master主分支, 而且通过命令 git branch --list 能看到克隆后在本地也只有这一个分支, 如 ...

  4. gitlab 无法git clone 的一个小点

    我这个情况不知道是否通病: 因为我本身在服务器上安装了一个 apache2的网页服务器 所以ip地址就是本机的ip地址 但是我和gitlab的端口区分开了 所以我后来发现无法git clone 下来 ...

  5. git clone 一部分_Git/GitHub 中文术语表 | Linux 中国

    我们根据 GitHub 等文档,收集整理了部分常用的 Git 和 GitHub 中的术语的中文定名及其解释.作者:硬核老王 Git 和 GitHub 已经成为了开发者的基础工具,尤其是参与开源软件开发 ...

  6. python git切换分支_git命令之切换分支

    Git一般有很多分支,我们clone到本地的一般都是master分支,如何进行分支的切换呢?那么下面带大家简单的看看如何通过命令来切换: 1.查看远程仓库及本地的所有分支 命令:git branch ...

  7. git 切换分支_git 入门教程之分支总览

    分支就是一条独立的时间线,既有分支,必有主干,正如一棵树谈到树枝,必有树干一样的道理.我们先前对git 的全部操作默认都是在主干上进行的,这个主干也是一种特殊的分支,名为 master 分支. 无论是 ...

  8. [小团队自动化](二) Drone CI使用Vault作为凭据存储 —— 打造自己的CI/CD工作流...

    写在前边 这一篇文章是基于 Gitea+Drone CI+Vault 打造属于自己的CI/CD工作流系列文章第二篇,让我们一起来完成 drone 与 vault 的搭配使用,这篇主要讲 vault 的 ...

  9. 小团队 vs 大团队

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | cnblogs.com/liulun/p/71 ...

最新文章

  1. jenkins自动化工具使用教程(转)
  2. 架构师速成7.6-高中书单资料推荐
  3. 一旦有辞职念头就干不长了吗_每天都有辞职不想上班的冲动,你有吗?
  4. Matlab求解规划问题之 fgoalattain函数
  5. 如何在Sitecore CMS中打开内容编辑器
  6. Data Pump -- Example
  7. 2020牛客多校训练2 I Interval(对偶图最短路求最小割)
  8. Markdown初使用
  9. 微信小程序中图表可视化
  10. 通过优启通制作U盘启动安装Windows系统
  11. 非模式物种ROSE超级增强子鉴定分析详解
  12. 秦九韶算法(java实现)
  13. Flutter—— 仿自如APP裸眼3D效果
  14. pil.unidentifiedimageerror: cannot identify image file
  15. Chapter2:时域分析法(下)
  16. 2022小红书搜索词布局实战手册
  17. 心态很容易受别人影响_孩子在学校受了委屈,家长该如何做?
  18. c语言将矩形分成多个小正方形,蓝桥杯练习算法题(矩形切割成正方形)
  19. 读文件时,将str数据转换为float 报错ValueError: could not convert string to float: ‘.‘
  20. STK轨道外推算法的类型

热门文章

  1. 6.042 Mathematics for Computer Science
  2. Python_目录的简单操作(新建/查看/删除)
  3. angularjs directive2
  4. vimrc.local 备份
  5. leetcode 1184 python
  6. 计算机网络的唯一缺点,有点伤感的说说 我唯一的缺点就是,对你太好
  7. PAT乙级(1019 数字黑洞)
  8. php 调用模板,调用模板
  9. c语言声明第一个学生的成绩,C语言课程设计报告--学生成绩管理系统
  10. 数仓如何设置大小写不敏感函数