怎样在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 ...
随机推荐
- 最近遇到的C++数字和字符串的转换问题
1. 用itoa 和atoi 在头文件#include<cstidlib> itoa用法: char * itoa ( int value, char * str, int base ) ...
- 用Perl发送邮件小例子
据传,Perl发送邮件有很多方案,但我只会用Mail::Sender这种方式,也就只能简单谈谈这种方式. 在参考众多网页后,程序书写如下: #!/usr/bin/perl -w use Mail::S ...
- Sublime Text使用
安装Sublime Text Sublime 的安装比較简单,我们能够直接去官网http://www.sublimetext.com/,点击Download菜单.进入之后选择自己操作系统的进行下载安装 ...
- Distributed Management Task Force----分布式管理任务组
http://baike.baidu.com/link?url=Y9HGLs8Qj6pXbbgY6xPdfiGDsQO8Eu1e80B4giQtQ_hAfGNF59byxnLoERYri4Duw7Gw ...
- chrome.declarativeWebRequest
chrome.declarativeWebRequest 清单文件 规则 条件与操作的求值 使用优先级覆盖规则 类型 HeaderFilter RequestMatcher CancelRequest ...
- Android Studio代码自己主动检測错误提示
Android Studio的代码自己主动检測的错误提示方式感觉有点奇葩.和Eclipse区别非常大,Eclipse检測到某个资源文件找不到或者错误,都会在Project中相应的文件前面打叉.可是An ...
- hibernate的查询缓存和二级缓存的配合使用
我的上一篇博客Hibernate缓存体系之查询缓存(query cache),以及list和iterate方法的差别介绍了查询缓存的概念,以及list和iterate的差别.读者可能注意到:那篇博客測 ...
- WCF服务端的.NET Core支持项目Core WCF 正式启动
长期以来在wcf客户端库 https://github.com/dotnet/wcf 里反应最强烈的就是.NET Core的服务端支持 https://github.com/dotnet/wcf/is ...
- 关于Cascading
Cascading是一个开源的Java库和应用程序编程接口(API),它为MapReduce提供了一个抽象层.它允许开发者构建出能在Hadoop集群上运行的复杂的.关键任务的数据处理应用. Casca ...
- yum 安装 mysql
安装 yum -y install mysql-server 开机自启动 chkconfig mysqld on 设置账户密码 启动 service mysqld start -- 进入mysql库 ...