# 先 fork 项目到自己 github
# 1. 从自己仓库克隆到本地(clone 的是项目指定的默认分支,比如 master)
git clone git@github.com:me/em.git
# 2.1 查看本地分支
git branch
>>> * master
# 2.2 发现不是自己要开发的 (比如 dev) 分支,先查看本地和远程所有分支
git branch -a
>>> * master
>>> remotes/origin/HEAD -> origin/master
>>> remotes/origin/dev
>>> remotes/origin/master
# 2.2 创建一个dev分支(-b),并把远程dev分支(origin/dev)的内容放在该分支内。接着切换到该分支(checkout)
git checkout -b dev origin/dev
# 如果想切回 master 分支
git checkout master # 3. 和团队项目保持同步
# 3.1 查看有没有设置upstream(看返回里有没有 upstream)
# upstream(上游) 不是关键字,而是大家通用的远程仓库的别名
git remote -v
# 3.2 没有的话先添加团队项目地址
git remote add upstream 团队项目地址
# 3.3 获取团队项目最新版本
git fetch upstream
# 3.4 合并到本地
git merge upstream/dev
# 省事的话可以直接用 pull(pull = fetch + merge)
git pull upstream/dev # 4. push修改到自己的项目上
# 4.1 工作完成后,先 add 和 commit 提交更新到本地仓库,push 前先pull一下团队项目最新的代码(预防工作期间有人修改导致代码冲突)
git add .
git commit -m "fix bug" # 首次会提示配置邮箱与用户名,生成到 ~/.gitconfig 文件中
git pull upstream/dev
# 4.2. 推送到(自己的)远程仓库
git push
# 如果分支名不一致,需要指定 push 到哪个分支
git push origin HEAD:dev # 5. 登录 Github,进入 Fork 的仓库,点击 new Pull request 请求合并到团队项目
# 6. 团队负责人 review 通过后, 点击 Merge pull request 合并到团队项目

图解:

参考:

http://www.cnblogs.com/schaepher/p/4933873.html

http://blog.csdn.net/javagaorui5944/article/details/52976365

Github 团队协作基本流程与命令操作 图解git工作流程的更多相关文章

  1. GitHub团队协作流程

    说来惭愧,这么长时间,第一次参与修改开源项目,所以整理了一份GitHub团队协作流程,作为备忘,文章大部分内容参考https://www.cnblogs.com/schaepher/p/4933873 ...

  2. 超详细!Github团队协作教程(Gitkraken版)

    超详细!Github团队协作教程(Gitkraken版) 一.前期工作 1. 在 Github 上创建 organization step1. 登录Github网站,点击右上角头像,选择 " ...

  3. git详情、git工作流程、常用命令、忽略文件、分支操作、gitee远程仓库使用

    今日内容概要 git详情 git工作流程 git常用命令 过滤文件 分支操作 git远程仓库使用 可参照:https://www.cnblogs.com/liuqingzheng/p/15328319 ...

  4. 漫谈Github与开源,Git介绍以及Git的思想和基本工作原理 Git工作流程

    漫谈Github与开源 文字亮点: 为什么这些优秀的工程师会开源自己的项目? 因为开源是一种精神. 无数的软件开发者苦心积虑保护自己的代码不被破解,而还是被聪明绝顶的脚本小子破解了,但破解无数软件的脚 ...

  5. git工作流程

    git工作流程 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆的资源上添加或修改文件. 如果其他人修改了,你可以更新资源. 在提交前查看修改. 提交修改. 在修改完成后,如果发现错误,可 ...

  6. git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发

    Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...

  7. Git-Runoob:Git 工作流程

    ylbtech-Git-Runoob:Git 工作流程 1.返回顶部 1. Git 工作流程 本章节我们将为大家介绍 Git 的工作流程. 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆 ...

  8. github团队协作教程

    跟着笔者魔鬼般的步伐,我们一起来瞅瞅一个团队协作的任务如何进行版本管理吧~ 要跟上哦~ =============================================== 首先我们先来看下 ...

  9. 【原创】Github团队协作之Pull请求

    首先声明:Github上关于代码团队协作方式有很多种,这里只讲述Github上其中的一种代码团队协作方式.   Pull请求(Pull request) 1 综述     协作者通过fork一个新的代 ...

随机推荐

  1. Leetcode 动态规划 - 简单

    1. 最大子序和 (53) 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输 ...

  2. 洛谷P1025 数的划分【dp】

    将整数nn分成kk份,且每份不能为空,任意两个方案不相同(不考虑顺序). 例如:n=7n=7,k=3k=3,下面三种分法被认为是相同的. 1,1,51,1,5; 1,5,11,5,1; 5,1,15, ...

  3. 系统和帮助-Linux基础知识

    iOS镜像: 硬盘分区:留出一些空间;实在不成,可安装完成以后,新增一块虚拟硬盘; 终端:terminal 用户界面: GUI:图形界面 GNome KDE CLI: bash,zsh,sh,csh, ...

  4. JDK源码阅读-Integer

    先上一版字符串转数值的几个方法的区别 parseInt(String s),解析字符串数,10进制,返回int parseInt(String s, int radix),解析字符串数,radix为指 ...

  5. BZOJ 1013 cogs 1845 [JSOI2008]球形空间产生器sphere

    题目描述 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧毁这个球形空间产 ...

  6. 执行计划中Using filesort,Using temporary相关语句的优化解决

    昨天听开发人员提到,相关的彩票网页当中一个页面刷新的很慢,特别是在提取数据的时候,今天早上一到,便去找开发人员要去相关的也没进行浏览,窥探哪些数据出现了问题,开发人员使用PHP开发,所以我用IE很容易 ...

  7. iOS UIToolBar的使用

    UIToolBar存在于UINavigationController导航栏控制器中.并且默认被隐藏. 当设置UIToolBar显示,或者存在UITabBarController且tabbar被隐藏的时 ...

  8. POJ 2167 Irrelevant Elements 质因数分解

    Irrelevant Elements Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 2231   Accepted: 55 ...

  9. JSTL函数标签

    tld 文件代码 <?xml version="1.0" encoding="UTF-8" ?> <taglib xmlns="ht ...

  10. Android 怎样实现 焦点图的 无线循环滑动的状态?

    參考网址:http://my.oschina.net/xsk/blog/119167 总体的架构:ViewPgaer 中直接嵌套  IamgeView 方案一:  重写Viewpager 这样有局限性 ...