vs使用gitflow
1、背景:之前在开发一个项目时,用tfs管理代码,并用“禁止多人编辑”来避免冲突,但仅适用于开发团队较小时。缺点:
(1)、开发团队较大,开发人员较多时,会出现经常互相锁,增加沟通成本。比如增加文件时会锁住proj项目文件,其他人员不能增加文件。
(2)、当项目1.0版上线时,会继续开发增加其他功能,此时根据功能块和进度计划打出多个分支,打分支比较麻烦。
所以改用git。
Git分支和合并极其方便,有着成熟的开发代码管理套路。
2、分支介绍

需要安装gitflow小插件,方便打分支
(1)master主分支,掌管最成熟靠谱、测试过的代码,用来发布部署
(2)develop属于开发代码主线,相当于多个开发人员的代码主线。其下分feature branch功能分支,按功能任务等分给不同开发人员的分支。开发人员完成任务时合并到develop分支。
(3)release分支是测试人员用,测试从develop上打出release分支进行测试。如果出现bug,开发人员需要直接在release分支上解决bug,不要在develop上修改。
A:如果测试发现不理想,不上线,则把代码合并回develop上去(上面有修改bug的代码)
B:测试顺利,则必须把release代码分别合并到develop和master分支上去。务必两个都要合并。
(4)hotfixes:产品上线后突出紧急bug,急需解决,则从master打出hotfixes分支,解决完后合并到develop和master分支上去。务必两个都要合并。
(5)能够按照tag等获取特定版本代码。
3、git中常用小工具
(1)积压工作项 backlog,用于管理任务进度,根据任务名字来定义feature branch名字
4、操作细节

(1)vs——扩展和更新——联机——gitflow for 2017
(2)有些vs2017可能没安装git相关组件,重新运行vs2017安装文件——修改——单个组件——适用于windos的git
(3)新建team project——agile——git——finish
4、设置——存储库设置——真实邮箱——d:\tfs2018——选择差异/合并(点两下),显示成visual studio 全局
5、clone代码后,旁边有个此外开发,千万不要点不再提示
6、看Home主页,是否本project
7、gitflow——initialize只能配一次,直接点,默认ok
8、如果git地址为Ip的情况,可以改为域名形式,方便切换代码服务器。
9、切换分支
右下角为当前分支,双击下可切换分支

10、务必用gitflow新建分支,千万不要用vs的新建分支

11、合并feature分支并删除
切换到develop分支
并且主页——分支——develop——右键合并自

合并完feature分支后,可以删除

12、git的提交是将代码提交到本地存储库,然后点同步才能提交到服务器。
13、新建解决方案时,new solution—勾选git存储库
14、原有代码添加到git:(1)在服务器端增添项目,并且将团队成员加入,不要等待代码上传完毕后再加人,容易有权限bug(2)连接git上的项目地址,配置代码库,克隆,此时文件夹是空的,没有代码。(3)然后将原有代码直接拷贝到文件夹下,打开——更改——同步——push。此时操作的是master分支。可以去服务器上查看下。(4)配置gitflow,initial初始一下,出来develop分支,右击,push branch,将develop分支提交到服务器。
15、右击feature branch——publish推送到server,同事可获取。一般不会把feature branch提交到server
16、新项目提交到git时只有master分支。需要登录git服务器管理端,创建拉取请求,从master到develop
17、分支权限设置。
(1)分支安全性,设置每个角色的权限时,需要修改下1处的相应东西,再保存更改才有效果(小坑)


(2)分支策略,可以对分支设置审阅人,开发人员不能直接提交代码,需要发出pull request,审阅人看到消息后,审核同意后,代码才能提交到服务器端

vs使用gitflow的更多相关文章
- 聊聊Unity项目管理的那些事:Git-flow和Unity
0x00 前言 目前所在的团队实行敏捷开发已经有了一段时间了.敏捷开发中重要的一个话题便是如何对项目进行恰当的版本管理.项目从最初使用svn到之后的Git One Track策略再到现在的GitFlo ...
- gitflow以及git
git大概只会用常用的那几个命令,自己用的最多的也只是add commit push pull之类的,然后那天电话面试问我版本回退怎么办我都忘记了. 然后又看了看教程,此时想起来做项目的时候师兄说的g ...
- [Tool] SourceTree初始化GitFlow遇到错误(git command not found)的解决方案
[Tool] SourceTree初始化GitFlow遇到错误(git command not found)的解决方案 问题情景 使用SourceTree,可以方便开发人员快速的套用GitFlow开发 ...
- 项目管理gitflow的用法(转)
在这里主要讲一下我在项目中用到的关于gitflow的用法. 公司的项目中,专门有一台用来存放版本库的服务器,路径是在默认的安装目录/opt/git/,那么在使用的时候,如果你是一个功能模块或者是一 ...
- 在VS下使用 GitFlow管理项目开发
在VS下使用 GitFlow管理项目开发 1.右键将你的解决方案添加到源代码管理,如果你的VS没有安装git,会提示安装,安装完成之后,在团队资源管理可以看到如下界面 (图一) 2.安装gitflow ...
- 【转】使用git、git-flow与gitlab工作
转自:http://www.tuicool.com/articles/BZJRj2 使用git.git-flow与gitlab工作 时间 2013-11-02 00:40:39 Axb的自我修养 原 ...
- Git-Flow
Overview Git-Flow is a high-level command set wrapping low-level Git commands to support the "s ...
- GitFlow教程
GitFlow教程 这份教程是博主学到的git基础,仅适合小团队使用,仅供参考 配置Git 配置github上面的账号,首先需要自己在git上注册一个账号 git config --global us ...
- Git工作流指南:Gitflow工作流 Comparing Workflows
Comparing Workflows The array of possible workflows can make it hard to know where to begin when imp ...
- linux下gitflow辅助工具安装和使用
gitflow是一个确保nvie推荐的git branch分支策略最佳模型得到有效实施的辅助工具.它作为git的一个子命令而存在. http://nvie.com/posts/a-successful ...
随机推荐
- ios开发之 NSObject详解
NSObject是大部分Objective-C类继承体系的根类.这个类遵循NSObject协议,提供了一些通用的方法,对象通过继承NSObject,可以从其中继承访问运行时的接口,并让对象具备Obje ...
- iOS - 常用的CG结构体
CGPoint.CGSize.CGRect.CGRectEdge实际上都是结构体 一,几个常用的结构体 CGPoint 定义一个点,设置x坐标和y坐标 struct CGPoint { CGFlo ...
- easyui中多级表头,主表头不能添加field字段,否则不居中
<th field="" width="120" align="center" align="center" co ...
- 为QtCreator项目模板添加自动中文支持
每用QtCreator创建一个Qt项目时都要为它添加中文支持,比如qt4: 就要在main.cpp里添加 QTextCodec* codec = QTextCodec::codecForName(&q ...
- Mongodb的下载和安装
下载 下载地址:http://dl.mongodb.org/dl/win32/x86_64 说明:zip是解压版的,msi是安装版的:安装过程中不知道什么原因3.6.x版本的安装会时等待时间很长并且 ...
- 如何在安装node\npm\cnpm
1.安装node.js node.js的官方地址为:https://nodejs.org/en/download/. 根据windows版本后,选择要下载的安装包,下载完毕,按照windows一般应用 ...
- 解读EXPLAIN执行计划中的key_len(转)
原文:http://imysql.com/2015/10/20/mysql-faq-key-len-in-explain.shtml 导读 EXPLAIN中的key_len一列表示什么意思,该如何解读 ...
- SpringBoot-区分不同环境配置文件
spring.profiles.active=pre application-dev.properties:开发环境 application-test.properties:测试环境 applicat ...
- SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)
1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...
- vue脚手架搭建流程
搭建vue项目之前你需要安装vue的脚手架和node.js,一起去看看怎么搭建一个vue环境吧.(学编程语言最爱看见的就是用这个先写一个helloworld,只想说我对世界友好可是现实是残酷的.... ...