怎样在github上协同开发
How to co-work wither parter via github.
Github协同开发情景模拟
Github不仅有很多开源的项目可以参考,同样也是协同开发的最佳工具,接下来的就模拟一下协同开发的过程。
项目发起者:koffuxu
项目贡献者之一:xugangfeng
1,koffuxu发起了一个项目,然后发布到github上,邀请xugangfeng来协同开发
1.1 在github上 New Repository
1.2 在koffuxu的服务器clone下这个repository,然后把自己的初步内容添加到这个仓库
1 | git clone https://github.com/koffuxu/Embedded_Android_in_Chinese.git |
1.3 把自己的基础项目push到github
1 | git push -u origin master |
2,xugangfeng接到邀请,开发协同开发这个项目,首先先建好开发目录
2.1 进入koffuxu的github项目地址(https://github.com/koffuxu/Embedded_Android_in_Chinese.git),先fork这个项目到自己(xugangfeng)的项目中
2.2 把fork过来的项目clone到xugangfeng的本地
1 | git clone https://github.com/xugangfeng/Embedded_Android_in_Chinese.git |
2.3 新建并切换到工作(dev)分支
1 | git brach dev |
2 | git checkout dev |
2.4 把koffuxu的项目添加xugangfeng的远程仓库
1 | git remote add upstream https://github.com/koffuxu/Embedded_Android_in_Chinese |
2.5 把koffuxu的分支拿下来
1 | git remote update |
2.6 把koffuxu的maser分支更新到本地
2.7 合并koffuxu的分支到本地(其实第一次可以不需要)
1 | git rebase upstream/master |
3,xugangfeng实现了一个功能,现在他要开始提交这个commit了。
3.1 当然这个是正常代码的提交,大概流程如下
1 | git add test.md |
2 | git commit -m "modify from xugangfeng" |
3 | git push -u origin dev |
3.2 这时候,xugangfeng进入github网页,进入compare & pull request,填写一些信息,crete pull request即可。
4,koffuxu接下来把xugangfeng的提交合并到master分支
4.1 进入github koffux的项目中,可以看到有一个pull request的提示,然后comfirm merge即可
4.2 接下来进入koffuxu的本地,执行Git pull查看是否已经更新了。
5,还有一个场景,就是koffuxu有更新了,xugangfeng需要更新合并
5.1 koffuxu又在c4.md新增了一条
5.2 贡献者xugangfeng,就需要在原来的基本上更新合并了。
1 | git remote update upstream |
5.3 xugangfeng开始要合并更新
1 | git rebase upstream/master |
5.4 git log查看,已经合并过来了
整个过程比较啰嗦,慢慢看吧。有疑问可以提出来。
怎样在github上协同开发的更多相关文章
- 使用git和github进行协同开发流程
(本文假设各位已经对基本git的基本概念.操作有一定的理解,如无相关git知识,可以参考Pro Git这本书进行相关的学习和练习) 很多项目开发都会采用git这一优秀的分布式版本管理工具进行项目版本管 ...
- Github之协同开发
一.协同开发 1.引子:假如三个人共同开发同一份代码,每个人都各自安排了任务,当每个人都完成了一半的时候,提交不提交呢? 要提交,提交到dev吗,都上传了一半,这样回家拿出来的代码根本跑不起来.所以, ...
- Git学习笔记(三)远程库(GitHub)协同开发,fork和忽略特殊文件
远程库 远程库,通俗的讲就是不再本地的git仓库!他的工作方式和我们本地的一样,但是要使用他就需要先建立连接! 远程库有两种,一个是自己搭建的git服务器:另一种就是使用GitHub,这个网站就是提供 ...
- 教程:安装禅道zentao项目管理软件github上的开发版
该文章转自:吕滔博客 直接从github拉下来的禅道的源码,是跑不起来的.除非你按我的教程来做...哈哈哈(不要脸)~~~~ 禅道官网提供的版本包是带了有安装文件,并有打包合成一些css.js文件的. ...
- github在不同电脑上协同开发
当我换了电脑后,开发自己的github项目遇到了一些问题. 首先,git clone 'repository url'拉取下来项目,开始开发项目发.修改了一些文件后,当要git commit, git ...
- github上最全的资源教程-前端涉及的所有知识体系
前面分享了前端入门资源汇总,今天分享下前端所有的知识体系. 个人站长对个人综合素质要求还是比较高的,要想打造多拉斯自媒体网站,不花点心血是很难成功的,学习前端是必不可少的一个环节, 当然你不一定要成为 ...
- github上最全的资源教程-前端涉及的所有知识体系【转】
github上最全的资源教程-前端涉及的所有知识体系[转自:蓝猫的博客] 综合类 综合类 地址 前端知识体系 http://www.cnblogs.com/sb19871023/p/3894452.h ...
- Git之协同开发
Github之协同开发 一.协同开发 1.引子:假如三个人共同开发同一份代码,每个人都各自安排了任务,当每个人都完成了一半的时候,提交不提交呢? 要提交,提交到dev吗,都上传了一半,这样回家拿出来的 ...
- Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...
随机推荐
- git-flow 工作流 备忘清单
关于 git-flow 是一个 git 扩展集,按 Vincent Driessen 的分支模型提供高层次的库操作. 查看详情 ★ ★ ★ 这个备忘清单展示了 git-flow 的基本操作和效果. ★ ...
- ImportError: No module named _curses;Color support is disabled, python-curses is not installed.解决办法
linux系统默认安装了python2.6, 但是发现python2.7 import curses时 提示 找不到_curses 错误. 用pip(python2.7 )安装了curses-204 ...
- memcache的学习路线图
memcache学习材料 //memcache自带的github 上的 wiki //席剑飞 Memcache(MC)系列 1~8系列 评注: memcache系统写的最深的一博客,建议一读 ...
- 三期_day05_Dao层的准备工作_II
工作文件夹: 实体类:UserInfo.java package com.yc.crm.entity; import java.util.Date; public class UserInfo { p ...
- 出现异常时直接把e输出比输出e.getMessage()好得多
之前研究态度不好,出异常时处理草草了事,今天出现问题才觉得该认真对待每个分支.
- Koala - 使用
几天项目又加紧,样式想写又太慢! 下载考拉:http://pc6.dun.123ch.cn/download/koala%E7%BC%96%E8%AF%91%E5%B7%A5%E5%85%B7_30@ ...
- NDK编译STL
方法: 1.在jni目录下新建Application.mk; 加入 APP_STL := stlport_static 右边的值还可以换成下面几个: system - 使用默认最小的C++运行库, ...
- UI_Target/action 设计模式
RootView.m 中 UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem]; button.frame = CGRectM ...
- 【转载】Socket通讯原理以及TCP、IP三次握手机制分析
要写网络程序就必须用Socket,这是程序员都知道的.而且,面试的时候,我们也会问对方会不会Socket编程?一般来说,很多人都会说,Socket编程基本就是listen,accept以及send,w ...
- 【java】itoo项目实战之hibernate 批量保存优化
在itoo中.基本上每一个系统都有一个导入功能,大量的数据填写进入excel模板中.然后使用导入功能导入的数据库中,这样能够大大的提高工作效率. 那么导入就涉及到了批量保存数据库的问题了. 那么通常情 ...