git flow 的使用
在这里主要讲一下我在项目中用到的关于gitflow的使用方法。
公司的项目中,专门有一台用来存放版本号库的server,路径是在默认的安装文件夹/opt/git/,那么在使用的时候,假设你是一个功能模块或者是一个项目的发起者的话,那么你能够选择使用gitflow来进行管理,关于gitflow的优点在这里我就不在多讲了。
1、首先在上面刚刚讲到的文件夹(注意这是在专门的盛放版本号库的那台server上)内,创建一个文件夹,比方说叫testflow.git.
2、cd testflow.git ----> git --bare init //在这个文件夹下创建一个裸仓库,这个时候这个仓库里面是空的,什么都没有的,当然也还没有不论什么的分支。
注意:一下均是在本地机器上完毕的操作
3、在本地的机器上(开发用的机器),在某个文件夹下比方project创建一个项目文件夹比方testproject ----> cd testproject ---> rails new . //在当前文件夹下创建rails项目。
4、git init 初始化本地的git仓库,注意这条命令会为我们在当前文件夹创建一个git仓库,并默觉得我们创建一个master分支
5、编辑我们须要让git忽略的文件,即哪些文件不纳入到git的版本号库管理里面。cd .git
vi .ignore ,进入到这个.ingore文件,输入那些须要让git忽略的文件夹活文件。
6、配置git的基本信息。在当前用户的家文件夹,git的全局配置,存储于$HOME/.gitconfig里,这里的配置影响当前用户的全部git repo,或者命令行里,通过git config的--global參数开启全局配置。
$: git config --global user.name yyfrankyy
$: git config --global user.email yyfrankyy@gmail.com
7、在做完上述配置之后,在当前项目的根文件夹执行git add . 将当前文件夹的全部变更的文件通知git进行记录
8、git remote add origin test@192.168.0.139:/opt/nginx/testflow.git ---这句话的意思是 在本地配置文件中面记住这个远程库的地址和库的位置,并命名为origin
9、git comit -m 'first commit' ----> 提交本地代码到仓库,并标识为first commit
10、git push origin master --->把本地git仓库的代码提交到远程git库,假设你不知道远程库叫什么名字,那么你能够执行 git remote 这样就能够列出本项目中的本地git库与远程的哪个git相应。假设你想知道这个远程库的具体信息,那么你能够执行git remote show origin,这种话,就能够显示出这个远程库的基本信息来。
关于gitflow的安装:
a、git clone --recursive git://github.com/nvie/gitflow.git
b、sudo make prefix=/opt/gitflow install
c、在/etc/bash.bashrc中增加:
exprot $PATH = $PATH:/opt/gitflow/bin
d、source /etc/bash.bashrc
11、git flow init ---利用gitflow为我们创建master分支和develop分支
12、git checkout develop ---->切换到本地的develop分支。
13、git branch ---看一下如今我们是不是已经在develop分支
git branch -r 查看远程分支状况(一般为一个,master分支)
git branch 查看本地分支及当前自己所在的分支
git branch -a 查看全部分支(本地和远程)
14、git flow feature start test_feature --->在develop分支下创建一个feature分支,并命名为test_feature,以后我们全部的开发工作都应该在这个分支下完毕,在开发完毕后,我们要git status查看哪些文件都发生了变化,然后我们在git add . 将全部当前文件夹下的发生改变的文件通知本地git进行记录,然后 git commit -m 'xxxxx'提交代码到本地仓库
15、然后再git flow feature finish test_feature 这种话,我们就把feature分支下的全部改变的代码都merge回了develop分支,git并为我们删除了刚才的test_feature分支,然后我们再git checkout master 跳转到本地的master分支,然后 git merge develop 把本地的develop代码merge回本地的master分支,
16、git push orgin master -----> 将本地master分支的代码提交到远程的master分支
17、假设在上述全部操作都完毕后,我们还想再在刚才的基础上继续开发其它功能的话,那么我们再次跳转到develop分支然后再开feature分支,继续开发就能够了。
以上所述就是我本人在公司用到的gitflow尽心的项目代码的管理,此外关于git的配置,还有非常多内容没有说,这里给大家提供了几个网址,感兴趣的朋友能够去參考一下
http://intl-bcds.iteye.com/blog/652594
http://hi.baidu.com/fiction_junru/blog/item/c9f4a2ef2dde7d3b2cf53411.html
http://f2e.us/wiki/git-config.html
參考网址:http://wiki.samba.org/index.php/Using_Git_for_Samba_Development
git flow 的使用的更多相关文章
- Git 在团队中的最佳实践--如何正确使用Git Flow
我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...
- Git 在团队中的最佳实践--如何正确使用Git Flow[转]
原文地址:http://www.cnblogs.com/cnblogsfans/p/5075073.html Git的优点 Git的优点很多,但是这里只列出我认为非常突出的几点. 由于是分布式,所有本 ...
- GIT FLOW 时序图
git flow sequence md link: git branching model master->master branch: use default branch Note rig ...
- 基于git的源代码管理模型——git flow
基于git的源代码管理模型--git flow A successful Git branching model
- git flow的使用
简介 Gitflow工作流程围绕项目发布定义了严格的分支模型.尽管它比Feature Branch Workflow更复杂一些,但它也为管理更大规模的项目提供了坚实的框架. 与Feature Bran ...
- 引入git flow分支管理
git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴.它可以使得版本库的演进保持简洁,主干清晰,各个分支各司其职.井井有条. 先看下Vincent Driessen ...
- git flow的安装和使用
确保安装了git 1.windows系统下安装 进入cmd clone github上的gitflow到一个文件夹下 我这里clone到 c:\gitflow git clone git://gith ...
- git以及git flow 的使用
转载:http://selfcontroller.iteye.com/blog/996494 在这里主要讲一下我在项目中用到的关于gitflow的用法. 公司的项目中,专门有一台用来存放版本库的服 ...
- 基于SourceTree 下的 Git Flow 模型
基于SourceTree 下的 Git Flow 模型 1. sourceTree 是一个开源的git 图形管理工具,可下载mac版本,windows版本 2. Git Flow 是一套使用Git进 ...
- 从一个前端项目实践 Git flow 的流程与参考
Git flow 出自 A successful Git branching model,这里使用了一个前端项目配合本文稿实施了 git flow 并记录流程作出示例和参考,对 hotfix 与持续部 ...
随机推荐
- MAMP:在 OSX 中搭建 Apache, MySQL, PHP 环境并本地安装、调试 WordPress
MAMP 这个名字来源于 Macintosh Apache MySQL PHP,显然专门用来在 Mac 环境下搭建 Apache.MySQL.PHP 平台. 虽然 OSX 中已经预装了 Apache ...
- POJ 2455 网络流 基础题 二分+网络流 dicnic 以及 sap算法
Secret Milking Machine Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8189 Accepted: ...
- MongoDB(二)——安装配置了解
前边介绍了MongoDB的大概理论知识,这篇来对MongoDB进行一下安装使用,支持安装在windows和linux上,当然了很多其它情况下我们是安装在linux上,由于毕竟server用linux的 ...
- iOS - 单例传值 (一)
点击打开链接 iOS - 单例传值 (二) 单例只会对某个类实例化一次/单例类,对单例这个类实例化一次有且仅有一个对象 你单例初始化,只能初始化一次,然后你指向的对象,其实都是指向一个内存地址, ...
- 使用ItextSharp产PDF完整操作
原文 使用ItextSharp产PDF完整操作 记得上回有写到用C#操作Excel(.net 4.0) 很多朋友说推荐用NPOI,的确,用微软自带的操作execl会有很大的问题.客户的主机不愿意安装e ...
- 使用ssh远程执行命令批量导出数据库到本地(转)
前天正在跟前端的同事调试功能.服务器开好,模拟的玩家登录好,就在倒计时.这时突然运营的同事跑过来说要统计几个服务器玩家的一些情况,也就是需要从几个服的数据库导出部分玩家的数据.好吧,我看了一下时间,1 ...
- 二维码闪电登录流程详解,附demo(2/2)
上篇文章,我们重点介绍了一下二维码登录的流程,以及每个“角色”要做的事情,下面我们重点分析TV角色所做的工作. TV主要完成二维码图片显示,以及websocket请求.下面重点说一下这两点. 1. B ...
- ASP.NET - 用户控件制作
首先添加用户控件: 在里面写上代码: <%@ Control Language="C#" AutoEventWireup="true" CodeBehin ...
- Delphi中JSon SuperObject 使用:数据集与JSON对象互转
在delphi中,数据集是最常用数据存取方式.因此,必须建立JSON与TDataSet之间的互转关系,实现数据之间通讯与转换.值得注意的是,这只是普通的TDataset与JSON之间转换,由于CDS包 ...
- linux 控制台使用技巧
1. 键盘无响应 可能是按下ctrl+s, 此时按下scroll即可解锁 2. 想看上一屏的信息 shift+pageup 3. 打印的信息和错误信息区分 普通信息, 用printf, cout打印的 ...