一个从无到有的项目大体经历-创建项目目录,创建repo,配置过滤集,配置git user,导入已有基础代码入库,将库放到central去,建立分支,修改代码,checkin代码,分支上

测试验证代码,merge稳定代码回主线,打tag,push到中央库分享

mkdir app
   cd app
   git init
   cd .git
   vi description
   cd info
   sudo vi exclude

cd ../../ (app目录)
   git add --all
   git commit

 git checkout develop :创建一个永久的branch : develop用于项目组做下一个release的开发

 git checkout featureteam_xxxfeature :创建一个为team开发共享半临时的分支: featureteam_xxxfeature

git remote add origin https://xxx@github.com/xxx/yyy.git

git push origin master  :将上述项目的baseline,所有供开发测试的永久分支push到中央库中

在生产服务器上

git clone https://xxx@github.com/xxx/yyy.git /var/www/html/www/mywebsite

项目组开发环境中:

git clone  https://xxx@github.com/xxx/yyy.git

git checkout --track develop  :项目成员创建一个local tracking branch,和中央库的develop建立映射关系

git checkout --track featureteam_xxxfeature :项目组feature team创建一个local tracking branch,和中央库的featureteam_xxxfeature建议映射关系,以便共享工作和协同开发

//git checkout -b develop 创建一个integration分支用于集成所有的feature

git checkbout -b xxxfeature_zhangsan :创建xxxfeature分支下面的_zhangsan分支,以便本地开发,并且最终merge到xxxfeature分支,并且push相对稳定的版本到中央库。注意:之所以不直接在featureteam_xxxfeature这个feature team共用的分支上直接开发,是因为有可能在本地开发过程中,需要pull feature team其他成员的贡献到这个分支。
   git branch -a
   git commit -a -m "your commit msg"

git checkout featureteam_xxxfeature

 git merge xxxfeature_zhangsan  :merge zhangsan的修改到xxxfeature_zhangsan公共分支上

git push origin xxxfeature_zhangsan :分享自己测试完毕的feature代码

git checkout develop
   git merge featureteam_xxxfeature  :由team leader来做整个feature的merge,并且push分享到develop集成流上去

git push

 测试。。。

继续集成其他的feature,测试,版本基本稳定后

 git checkout master

git merge develop

git tag Release2.0 //所有稳定准备放到服务器上部署的版本都放在master branch上

git push origin master

生产环境服务器上执行:

git pull origin master 部署新的代码

如果要在生产环境上rollback,则只需要git checkout Release1.0即可。当然在生产环境下的部署还有一些额外的工作,比如数据库schema也发生了变化,生产数据的导入等,可以通过hook来自动实现

git项目实战常用workflow和命令的更多相关文章

  1. git 项目最常用命令总结

    本文为博主原创,未经允许不得转载: 1.查看git基础配置信息 1.查看用户名和邮箱地址 git config user.name   git config user.email 2.修改用户名和邮箱 ...

  2. IDEA Git 项目实战场景

    实战场景一:上班啦,从远程仓库克隆项目到本地仓库(Clone) 打开 IDEA,在 Check out from Version Control 下拉菜单选择 Git,如下: 在弹出窗口的 URL 地 ...

  3. 脑洞大开--一条项目中常用的linux命令引发的经典算法题

    小时候家里定了<读者>的月刊,里面记录一个故事:说有有个偏僻的乡村一日突然来了一个美女,她携着万贯家财子女在当地安家落户,成了当地的乡绅.她让她的子女世世代代的保守这个秘密,直到这个秘密不 ...

  4. 【61】git项目实战的步骤总结

    1.新建分支的步骤 git pull git checkout -b 分支号(task的后面的代号) 2.提交代码到远程仓库的步骤 git add . git commit -m "分支号+ ...

  5. 一条项目中常用的linux命令引发的经典算法题

    小时候家里定了<读者>的月刊,里面记录一个故事:说有有个偏僻的乡村一日突然来了一个美女,她携着万贯家财子女在当地安家落户,成了当地的乡绅.她让她的子女世世代代的保守这个秘密,直到这个秘密不 ...

  6. Git项目实战篇

    版本控制器:Git # 达到多人协同开发的目的 安装 """1.下载对应版本:https://git-scm.com/download2.安装git:在选取安装路径的下一 ...

  7. 项目中常用的linux命令

    1. du -sm * | sort -n 把当前目录下的文件(或目录)按大小排序,看下哪个地方占用最多: 2. pwd                     获取当前目录路径 3. tail -f ...

  8. 项目中常用git命令操作指令(一般正常的话够用不够再看相关git命令)

    配置git1.首先在本地创建ssh key:ssh-keygen -t rsa -C "github上注册的邮箱" //(一路回车)2.进入c:/Users/xxxx_000/.s ...

  9. Git 入门和常用命令详解

    git 使用使用教程   git 使用简易指南  常用 Git 命令清单 下载   https://git-scm.com/downloads 工作流 本地仓库由三部分组成. 工作区:保存实际的文件( ...

随机推荐

  1. .NET设计模式(19):观察者模式(Observer Pattern)(转)

    概述 在软件构建过程中,我们需要为某些对象建立一种“通知依赖关系” ——一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者对象)都将得到通知.如果这样的依赖关系过于紧密,将使软件不能很好地抵御 ...

  2. .NET设计模式(17):命令模式(Command Pattern)(转)

    概述 在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”.但在某些场合,比如要对行为进行“记录.撤销/重做.事务”等处理,这种无法抵御变化的紧耦合是不合适的.在这种情况下,如何将“行为 ...

  3. 自己写简单CoreDataManager封装对CoreData操作

    关于CoreData的介绍太多,网上一搜大把全是,这里不介绍CoreData,直接上代码,注释写的很详细,应该很容易理解,暂时现做简单的增删该查,后面有时间再做修改完善. CoreDataManage ...

  4. 如何在Asp.net中备份Access数据库?

    public   void   Create(   string   mdbPath   ) { if(   File.Exists(mdbPath)   )   //检查数据库是否已存在 { thr ...

  5. mybatis中:returned more than one row, where no more than one was expected.异常

    org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorEx ...

  6. docker-py的配置与使用

    测试环境 75机:Red Hat Enterprise Linux Server 7.0,无外网访问权限 73机:Red Hat Enterprise Linux Server 7.0,无外网访问权限 ...

  7. 【基本算法】 KMP文本串模式串的字符串匹配算法

    看了两个晚上的KMP,加上基本的“暴力匹配” 今晚看懂next[j]递归求解时,突然觉得算法真的好美妙,虽然觉悟的晚但晚胜过没有是吧! 我的博客都是应试性的学习笔记,不具备指导性,还是大神们写的好,例 ...

  8. 初识IOS

    编译环境: ssh cloud@10.0.4.148  mx-cloud 1.关于ARM架构 IPHONE上的ARM-CPU架构在不断的进化过程中,目前情况如下: ARMv8 / ARM64 = iP ...

  9. HDU4782 Beautiful Soup

    成都赛里的一道坑爹码力题,突然间脑抽想做一下弥补一下当时的遗憾.当时没做出这道题一是因为当时只剩大概45分钟,对于这样的具有各种条件的题无从下手,二则是因为当时估算着已经有银牌了,所以就不挣扎了.但是 ...

  10. **app后端设计(10)--数据增量更新(省流量)

    在新浪微博的app中,从别的页面进入主页,在没有网络的情况下,首页中的已经收到的微博还是能显示的,这显然是把相关的数据存储在app本地. 使用数据的app本地存储,能减少网络的流量,同时极大提高了用户 ...