联合项目开发GIThub使用

分支

在没有使用分支之前,git会默认有一个分支,

就是主分支(master分支,还记得 git push –u origin master这个命令吗?)

这里的master就是主分支

git分支的操作

(远端项目保存在我的git hub上面的一个仓库中)

(1)下载远端项目至本地

(1) 自己定义项目的路径 右键打开Git Bash Here

(2) 输入命令 $ git clone https://github.com/xxxx(仓库地址)

注:只有在项目开始的时候使用git clone 下载项目

以后每天早上是在项目目录下通过git pull 来拉取最新的项目代码

2.git分支创建及使用

整个项目框架下载完成后,项目成员可以通过git分支来实现部分代码更新与合并

使用流程:

早上刚来,你要做的事情abcd)

(1) 分支的基本应用

先进入项目文件夹,在项目文件夹内右键点击Git Bash Here

a. 查看远程仓库 $ git remote -v 这样可以看到自己连接的仓库是否正确

b. 拉取远程最新的代码 $ git pull (此时路径应该在master下)

c. 创建分支,分支名称自己定义(这里的fan是我自己定义的) $ git branch fan

d. 切换分支至自己创建的分支 $ git checkout fan

切换后 命令行分支路径会由以前的master主干变为分支(fan),就表示切换成功

备注:

以上c,d两步可简写为1行代码(创建并切换)

$ git checkout -b fan
这时候就在项目文件夹开发自己的代码,一顿增删改查骚操作,完成开发之后

一天过去了,到了晚上该提交你的项目了:

(晚上回去之前,你需要做的事情efghijk)

e. 在项目文件夹下进入命令行,目录必须是自己的分支(fan),而不是master

输入 $ git add .

$ git commit -m'第一次修改@fanfan'

f. 这时候切换到主分支 (切换分支之前一定要保证分支fan下已经

完全commit, 否则无法切换,即使用git status查看一下,没有红的绿的就表示提交完成)

$ git checkout master (切换至master分支)

g.再次拉取远程最新代码(此时路径应在master下)

$ git pull

这里解释一下为什么要切换到主分支并且重新拉取代码

因为咱们多个人,在你编写你的代码期间,别人可能已经上传、更新版了,这时候项目的

源代码或许已经改变,因此需要重新拉取

重新拉取的代码会重新下载到你的项目目录中,之前fan分支改变的内容会保存在你电脑的缓存区

h. 在你的主分支(master)下进行分支合并

$ git merge fan

i: 那么刚才只是在本地合并分支,我们需要将本地合并后的主干master上传到远端的master

$ git push https://github.com/xxx(仓库名) master:master

j: 这时候在远端查看一下,你的代码是否修改完成

k: 确认修改完成了 这时候删除你自己的分支 fan

$ git branch -d fan

强制删除命令($ git branch -D fan)
总结以下,我们项目中的每个人每天需要做的事情是什么呢?

项目开发过程中,每天每个成员都需要进行一次流程a-k

大致归为:远端获取最新代码-----新建分支-----切换到分支---(开始编写当天的代码)-----上传分支(add、commit)-------切换到主干------远端数据重新拉取(git pull)------新数据与分支合并(git merge)------上传至远端(git push)-------删除分支


注意事项

请勿在,master路径下执行如下操作,容易引起合并冲突

$ git add .

$ git commit -m "修改一次"

GitHub使用详细流程(多人开发)的更多相关文章

  1. [转] electron实战开发详细流程

    [From] http://www.myk3.com/arc-8856.html 很久没有更新博客,人越来越懒了,唉 说好做的electron教程距离上次玩electron已经过去了好几个月了.. 这 ...

  2. github如何多人开发一个项目

    github如何多人开发一个项目 一.总结 一句话总结:a.点项目里面的Settings->Collaborators,来添加参与者(比如github用户名), b.向他发送项目的link,让他 ...

  3. Github第三方登陆详细流程

    一. 流程图 二.具体实现步骤 Ⅰ.创建OAuth App 我们首先需要创建一个OAuth App,根据下图的步骤点击即可 依次填写信息,然后点Register application 然后我们可以看 ...

  4. GitHub超详细图文攻略

    GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git 分类: 转载2014-03-25 21:10 10641人阅读 评论(2) 收藏 举报 GitHubbr ...

  5. 【转】xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)

    原文网址:http://blog.csdn.net/mad1989/article/details/8167529 最近项目到了最后的阶段,测试完一切ok后,准备打包以及提交,不料看到网上众教程,好多 ...

  6. xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)

    链接地址:http://blog.csdn.net/mad1989/article/details/8167529 打包发布APP流程真机测试和APP发布流程APP提交审核流程真机测试打包发布上传出错 ...

  7. ios 真机测试与发布详细流程,基于最新的开发者网站,ios7,xcode5(有截图的哦)[[[第一部分真机测试]]]

    转载于:http://blog.csdn.net/lv_ruanruan/article/details/14446597 真机测试及发布详细流程,最新版 第一次一个人搞一个项目,我们老大规定,一个周 ...

  8. 全球首个全流程跨平台界面开发套件,PowerUI分析

    一.       首个全流程跨平台界面开发套件,PowerUI正式发布 UIPower在DirectUI的基础上,自主研发全球首个全流程跨平台界面开发套件PowerUI(PUI)正式发布,PowerU ...

  9. 微信小程序提交审核并发布详细流程

    微信小程序提交审核并发布详细流程 审核在1小时到N天不等 官方7天,一般3天内 提交审核?如何发布?审核过程中注意事项? 服务器: 域名只支持 https (request.uploadFile.do ...

随机推荐

  1. Directx教程(25) 简单的光照模型(4)

    原文:Directx教程(25) 简单的光照模型(4)      在本篇日志中,我们尝试用不带衰减的点光源来计算漫反射颜色.     前面的三个工程,我们都用的是方向光源(directional li ...

  2. linux服务器配置防火墙使用端口

    重启后生效方法: 1.开启: chkconfig iptables on 2.关闭: chkconfig iptables off  即时生效,重启后失效 : 1.开启: service iptabl ...

  3. Django Rest Framework Serializer的简单使用

    1.RESTful 1.1 定义 REST(Representational State Transfer)与技术无关,代表一种软件架构风格,中文为表征状态转移. 1.2 RESTful API设计 ...

  4. AtCoder Regular Contest 090 D - People on a Line

    D - People on a Line Problem Statement There are N people standing on the x-axis. Let the coordinate ...

  5. Linux 下的python操作redis

    python操作redis   Redis redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).se ...

  6. 【NS2】ubuntu安装和同时使用不同版本的ns2(转载)

    有时候我们可能会遇到要同时安装两个ns版本的问题,比如我研究wimax/802.16,因为协议太复杂,用的是长庚大学和nist的wimax补丁.长庚大学的wimax补丁是在ns2.29下开发的,nis ...

  7. jenkins集成错误 标签: 发布 2016-01-10 20:45 747人阅读 评论(21) 收藏

    进入ITOO的项目以后,终于要将自己负责的模块在jenkins上面集成发布了.首先自己按照文档要求一步一步的将配置完成,然后构建,不错所料出错了,经过修改,终于构建成功!构建成功以后就没再管了,结果第 ...

  8. jQuery 加法计算 使用+号即强转类型

    var value1 = $("#txt1").val(); var value2 = $("#txt2").val(); //数值前添加+号 number加号 ...

  9. C语言中内存的管理

    一.动态内存分配与释放 1.为什么要使用动态内存分配,以下看一个实例,关于超市中购买记录的一段程序 #include <stdio.h> #include <string.h> ...

  10. @bzoj - 4378@ [POI2015] Logistyka

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 维护一个长度为 n 的序列,一开始都是 0,支持以下两种操作: ...