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 ...
随机推荐
- I do think I can breakdown the problem into parts that make sense
RESTful Web APIs_2013 An API released today will be named after the company that hosts it. We talk a ...
- Chap3:区块链的衍生技术[《区块链中文词典》维京&甲子]
- Windows 内存管理
参考文献: http://blog.csdn.net/wubin1124/article/details/3760242 工作集(内存): 可以这么理解, 此值就是该进程所占用的总物理内存. 但是这个 ...
- 过滤器会拦截 前端页面加载 js文件的请求
学艺不精啊.....之前就总结过博客: JAVA中解决Filter过滤掉css,js,图片文件等问题 结果现在又犯了老错误~ 情况如下: index.jsp 页面的验证码输入栏绑定了异步验证(jQur ...
- 图->存储结构->邻接多重表
文字描述 邻接多重表是无向图的另一种链式存储结构. 虽然邻接表是无向图的一种很有效的存储结构,在邻接表中容易求得顶点和边的各种信息. 但是,在邻接表中每一条边(vi,vj)有两个结点,分别在第i个和第 ...
- 【python-opencv】30-角点检测
[微语]世上有很多不可能,不过不要在你未尽全力之前下结论 特征检测:找到图像特征的技术 特征描述:描述图像特征 Harris角点检测(Corner Detection) 参考: https://doc ...
- PHP三种运行方式(转载)
三种运行方式:mod_php5.cgi.fast-cgi 1. 通过HTTPServer内置的模块来实现, 例如Apache的mod_php5,类似的Apache内置的mod_perl可以对perl支 ...
- FlashFXP+FileZillaServer
从远程站点里拷贝文件到本地时,如果文件太大,通常会非常耗时,再加上若需要拨VPN,网络上的任何波动都会造成传输文件失败从头来过. 运用FlashFXP和FileZillaServer这两个工具,它拥有 ...
- MySQL复制异常大扫盲:快速溯源与排查错误全解
MySQL复制异常大扫盲:快速溯源与排查错误全解https://mp.weixin.qq.com/s/0Ic8BnUokyOj7m1YOrk1tA 作者介绍王松磊,现任职于UCloud,从事MySQL ...
- dxCalloutPopup 简单使用教程
Panel1.Visible := False; // 设置panel初始不显示 dxCalloutPopup1.PopupControl := Panel1; // 设置弹出窗口内容为哪个控件 dx ...