• git项目实战常用workflow和命令


    一个从无到有的项目大体经历-创建项目目录,创建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来自动实现

  • 相关阅读:
    ajax基本使用
    ajax
    七个你无法忽视的Git使用技巧
    Git原始笔记
    php session自定义处理
    linux下用phpize给PHP动态添加扩展
    【转】做到这一点,你也可以成为优秀的程序员
    PHP扩展开发-测验成功
    PHP扩展开发--实验成功
    php类似shell脚本的用法
  • 原文地址:https://www.cnblogs.com/kidsitcn/p/4535411.html
Copyright © 2020-2023  润新知