代码管理

源码管理的10个问题

纵然是瞬间 提交于 2020-03-06 03:41:25
1. 你的团队的源代码控制在哪里?用的是什么系统?如何处理文件的锁定问题? 场景: 程序员果冻正在对几个文件进行修改,实现一个大的功能, 这时候,程序员小飞也要改其中一个文件,快速修复一个问题。怎么办? 一个代码文件被签出 (check out) 之后,另一个团队成员可以签出这个文件,并修改,然后签入么? 有几种设计,各有什么优缺点? 例如,签出文件后,此文件就加锁,别人无法签出; 或者, 所有人都可以自由签出文件 回答问题:我们团队的代码在github上,用的是windows系统。我们团队的在处理文件的锁定问题没有加锁,我们的项目比不上大型企业的项目,所以没有对文件迁入迁出进行过多的限制。将文件在迁入迁出时加锁,显然可以保证源代码修改的同步性,减少不必要的冲突和错误,但是这样的缺点是显而易见的,由于缺乏了并行性,项目开发的效率就被极大地降低了,以我们小组现在的项目规模就不需要加锁。 回答场景:主分支master,若要实现一个大的功能,可以在当前master分支开一个新的分支用户对文件进行改写。下一个人也开在当前master分支开一个分支新的用户分支进行bug的修复,修复完成之后与master进行合并,完成了功能的实现之后再与master分支进行合并。 2. 如何看到这个文件和之前版本的差异? 如何看到代码修改和工作项 (work item),缺陷修复 (bug fix) 的关系。

团队源代码管理

若如初见. 提交于 2020-03-06 03:40:21
小组名称: 飞天小女警 项目名称: 礼物挑选小工具 小组成员: 沈柏杉(组长)、程媛媛、杨钰宁、谭力铭 0. 如果你的团队来了一个新队员,有一台全新的机器,你们是否有一个文档,只要设置了相应的权限,她就可以根据文档,从头开始搭建环境, 并成功地把最新、最稳定版本的软件编译出来,并运行必要的单元测试?(在这过程中,不需要和老队员做任何交流) 答 :团队在初期编译了一篇文档,供组员或其他成员搭建环境,如果有需要可以向组长索取。 1. 你的团队的源代码控制在哪里?用的是什么系统?如何处理文件的锁定问题?场景:程序员果冻正在对几个文件进行修改,实现一个大的功能, 这时候,程序员小飞也要改其中一个文件,快速修复一个问题。怎么办?一个代码文件被签出 (check out) 之后,另一个团队成员可以签出这个文件,并修改,然后签入么?有几种设计,各有什么优缺点?例如,签出文件后,此文件就加锁,别人无法签出;或者,所有人都可以自由签出文件 我们用git控制代码版本。 让个人根据自己的i情况处理,当其影响到整个团队时,就尽量严格,因为整个团队都可能会受影响,同时提高可预见性,公开显示固定的构建时间对于该问题中的场景描述,是否会造成损失要具体问题具体分析,有的时候宽一些更适宜,有的时候严一些比较没有损失,于是我们根据构建执法的宽严表来进行工作,当团队成员的行为只是影响到个人时,就尽量宽松

源代码管理的一些问题

坚强是说给别人听的谎言 提交于 2020-03-06 03:39:35
问题来自于: 现代软件工程讲义 源代码管理 0. 在吹牛之前,先回答这个问题: 如果你的团队来了一个新队员,有一台全新的机器, 你们是否有一个文档,只要设置了相应的权限 ,她就可以根据文档,从头开始搭建环境,并成功地把最新、最稳定版本的软件编译出来,并运行必要的单元测试? (在这过程中,不需要和老队员做任何交流) 在团队的资料库的根目录中,会有一个"开发快速上手指南.docx"这个文档,这个文档作为一个索引文档,提供了资料库里面所有相关文档/工具的索引地址,格式可以多种多样,我提供一种格式作为参考: 开发工具以及配置: jdk: svn://xxx.xxxx.xxxx /jdk-7u80-windows-i586.zip eclipse: svn://xxx.xxxx.xxxx /eclipse-jee-luna-SR1a-win32.zip Tomcat: svn://xxx.xxxx.xxxx /apache-tomcat-7.0.55.zip MySQL: svn://xxx.xxxx.xxxx /mysql-5.5.47-win32.zip 部署详细步骤: 新建文件夹workspace 打开eclipse File à Switch Workspace à Other... à Browse..., 选择workspace这个目录,点击Ok,切换至新的工作空间

源代码管理的10 个实践问题

本小妞迷上赌 提交于 2020-03-06 03:38:39
源代码管理的10 个实践问题: 0. 在吹牛之前,先回答这个问题: 如果你的团队来了一个新队员,有一台全新的机器, 你们是否有一个文档,只要设置了相应的权限 ,她就可以根据文档,从头开始搭建环境,并成功地把最新、最稳定版本的软件编译出来,并运行必要的单元测试? (在这过程中,不需要和老队员做任何交流) 答:我们团队目前没有做专门的文档让新成员熟悉并搭建环境,最初的时候并没有太在意说团队要换人加入新成员,这次加入新成员,他们对整个项目的了解是通过软件规格说明书和老成员的讲解进行的,回头来看看这个问题,还真的值得我们反思,确实需要一篇这样的文档,节省时间。 1. 你的团队的源代码控制在哪里?用的是什么系统? 如何处理文件的锁定问题? 场景: 程序员果冻 正在对几个文件进行修改,实现一个大的功能, 这时候, 程序员小飞 也要改其中一个文件,快速修复一个问题。怎么办? 一个代码文件被签出 (check out) 之后,另一个团队成员可以签出这个文件,并修改,然后签入么? 有几种设计,各有什么优缺点? 例如,签出文件后,此文件就加锁,别人无法签出; 或者, 所有人都可以自由签出文件 答:我们团队的源代码是通过码市coding.net托管的,里面有我们的团队项目,每个成员都在里面,每个人都有一个自己的账号,只要登陆就能看的到项目动态,其中还有任务分配。我们的项目是公开的

关于源代码管理的10 个问题

十年热恋 提交于 2020-03-06 03:38:08
0、在吹牛之前,先回答这个问题: 如果你的团队来了一个新队员,有一台全新的机器, 你们是否有一个文档,只要设置了相应的权限,她就可以根据文档,从头开始搭建环境,并成功地把最新、最稳定版本的软件编译出来,并运行必要的单元测试? (在这过程中,不需要和老队员做任何交流) 将代码传到coding上。 1、你的团队的源代码控制在哪里?用的是什么系统?如何处理文件的锁定问题? 所有人都可以自由的签出源代码。 场景: 程序员果冻正在对几个文件进行修改,实现一个大的功能, 这时候,程序员小飞也要改其中一个文件,快速修复一个问题。怎么办?一个代码文件被签出 (check out) 之后,另一个团队成员可以签出这个文件,并修改,然后签入么?有几种设计,各有什么优缺点? 设计一:签出文件后,此文件就加锁,别人无法签出;优点:多人修改一个代码不会发生冲撞,缺点:锁定后别人无法再修改代码。 设计二:所有人都可以自由签出文件;优点:所有人都将可以对代码进行修改,提高效率,缺点:可能导致代码的编写流程混乱,发生冲撞。 2. 如何看到这个文件和之前版本的差异? 如何看到代码修改和工作项 (work item),缺陷修复 (bug fix) 的关系。 场景: 程序员果冻看到某个文件被修改了,他怎么看到这个文件在最近的修改究竟改了哪些地方? 场景: 程序员果冻看到某个文件在最新版本被改动了100 多行

源代码管理的10 个实践问题

老子叫甜甜 提交于 2020-03-06 03:37:53
0. 在吹牛之前,先回答这个问题: 如果你的团队来了一个新队员,有一台全新的机器, 你们是否有一个文档,只要设置了相应的权限,她就可以根据文档,从头开始搭建环境,并成功地把最新、最稳定版本的软件编译出来,并运行必要的单元测试? (在这过程中,不需要和老队员做任何交流) 答:来了新队员的话,确实需要这样一个文档,队友可以根据文档从头开始了解软件并且无需和老队员交流。不过我们现有的也就是需求规格说明书供新队员阅读并且了解团队的任务。 如下图: 1. 你的团队的源代码控制在哪里?用的是什么系统?如何处理文件的锁定问题? 场景: 程序员果冻正在对几个文件进行修改,实现一个大的功能, 这时候,程序员小飞也要改其中一个文件,快速修复一个问题。怎么办? 一个代码文件被签出 (check out) 之后,另一个团队成员可以签出这个文件,并修改,然后签入么? 有几种设计,各有什么优缺点? 例如,签出文件后,此文件就加锁,别人无法签出; 或者, 所有人都可以自由签出文件 答:我们的项目在git上托管,采用git的方式进行版本控制,这个是我们在开发开始时就达成的共识,针对这种多人多任务的开发模式,我们认为git是再好不过的选择,于是我们从开发到现在一直采用这种方式。 2. 如何看到这个文件和之前版本的差异? 如何看到代码修改和工作项 (work item),缺陷修复 (bug fix) 的关系。 场景:

VUE实现Studio管理后台(四):状态模式实现窗口停靠,灵动、自由

你离开我真会死。 提交于 2020-03-05 20:14:42
昨天做的tabs窗口,非常满意,今天乘胜追击,把它做成了可以根据自身大小改变显示样式,自身宽度过小时,tab页可以浮动停靠其一侧。具体效果: 左侧 右侧 向来喜欢简单明了的东西,所以想实现的简单一点,无奈现实不允许啊,功能实在有一丢丢复杂。硬着头皮搞了整整一下午,终于完成。 左侧跟右侧窗口,要使用同一个控件,尽量增加代码的可复用性,控件的状态就有些多:正常显示(普通tabs窗口),列表(显示图标跟标题,点击时弹出tab页),迷你列表(只显示图标,点击时弹出tab页)。 控件在界面左侧时,tab页弹出在其右侧。反之,控件在界面右侧时,tab页弹出在其左侧。 从正常tabs,缩小到列表显示时,所有tab都是不被激活的。从列表放大到正常tabs,要默认一个标签(tab)是被选中的。 这么多的状态要求,代码很容易就乱掉。不过还好,设计模式中有一个叫“状态模式”的,可以很好的解决这个问题,缺点就是初期代码量稍大,优点是便于后期管理。 昨天做了两个tabs控件,一个是WidgetTabs,另外一个是PageTabs,后者现在还能满足我们的需求,只需要修改WidgetTabs这一个就行。 昨天实现的一些代码删掉,首先重写模板,根据模板写脚本代码,可以让脚本代码更实用些,就像测试驱动的开发里,先写测试再写代码,是一个道理。 还有,差点忘了。昨天的代码里,把所有的style样式都放在style

springboot windows10风格 activiti 整合项目框架源码 shiro 安全框架 druid 数据库连接池

自闭症网瘾萝莉.ら 提交于 2020-03-05 13:48:00
此项目为Springboot工作流版本 windows 风格,浏览器访问操作使用,非桌面应用程序。 1.代码生成器: [正反双向](单表、主表、明细表、树形表,快速开发利器) freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块 2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源 3.阿里数据库连接池druid,安全权限框架 shiro(菜单权限和按钮权限), 缓存框架 ehcache 4.代码编辑器,在线模版编辑,仿开发工具编辑器 5.调用摄像头拍照 自定义裁剪编辑头像,头像图片色度调节 6.websocket及时站内信并声音提醒、实时在线管理、websocket及时刷新页面(完胜ajax技术) 工作流模块 1. 模型管理 :web在线流程设计器、预览流程xml、导出xml、部署流程 2. 流程管理 :导入导出流程资源文件、查看流程图、根据流程实例反射出流程模型、激活挂起 3. 运行中流程 :查看流程信息、当前任务节点、当前流程图、作废暂停流程、指派待办人 4. 历史的流程 :查看流程信息、流程用时、流程状态、查看任务发起人信息 5. 待办任务 :查看本人个人任务以及本角色下的任务、办理、驳回、作废、指派一下代理人 6. 已办任务 :查看自己办理过的任务以及流程信息、流程图

实验一 GIT 代码版本管理

一个人想着一个人 提交于 2020-03-05 05:37:24
实验一 GIT 代码版本管理 实验目的: 1)了解分布式分布式版本控制系统的核心机理; 熟练掌握git的基本指令和分支管理指令; 实验内容: 1)安装git 2)初始配置git ,git init git status指令 3)掌握git log ,git add ,git diff 指令 掌握git tag git branch,git commit 指令 5)掌握git revert 指令 实验记录:(以下内容根据各自实验情况填写) 1)实验结果截图 2)实验过程中发生的问题与解决 因为本次实验用的是手机端做的,所以实验中出现的问题有很多: 1.在手机端试用aistudio作为运行平台,每组命令前面需要加!,而手机键盘很难区别出中英文!所以很容易出错,而cd的时候并不需要加!,这导致我出错很多。而且手机端cd和电脑不同,cd时要加上/home/aistudio/… 2.在上传文件,即git add index.html。上传时,没有在指定文件夹下面,所以导致git log 和git status 出现错误。应该先ls-la看看是否有git文件,然后cd到还目录下,用git stauts查看是否正确,或者也可以使用!pwd看自己当前所以目录。 3.在查看分支和合并删除分支时出错,因为我没有在maser分支上所以导致删除分支出错,应该git status 看看当前分支,然后git

一、Git简介

*爱你&永不变心* 提交于 2020-03-04 11:50:13
由于工作需要,代码版本控制工具由SVN换为了Git。Git对于我来说,很陌生,不清楚其工作原理,所以查询了一些资料,将自己所得知的内容来汇总一下,梳理一下这方面的知识,同时也给其他想了解Git的童鞋们,提供点参考资料!! 了解软件,我们一般都了解其来源、优缺点(或与其他系统的比较)、安装配置、软件的架构,工作原理和使用,对于Git来说也是一样,这里也就这几个方面来说! 版本控制工具简介 问题的发现与解决永远是我们软件行业前进的动力与根源! 说到版本控制工具,不得不说,我们为什么需要它,也就是我们遇到了什么问题,需要用它来解决。 在对文档进行管理的时候,我们通常会遇到2大问题:1.文档怎么回滚到编辑之前的状态;2.如果两个人同时编辑某个共享文件,先进行编辑的人所做的修改内容会被覆盖。 为了解决这2个问题,前辈们开发了一系列的版本控制系统,其中Git就是这些版本控制系统中十分出色的一个! Git简介 Git是Linus Torvalds 为了帮助管理 Linux 内核开发,而用C语言开发的一个开源的 分布式 版本控制工具,注意这里对分布式的强调。不同于Git,像Perforce、SVN和CVS这类版本控制工具都是集中式的。 Git常用于敏捷高效地处理任何或小或大的项目。 下面大概介绍下集中式版本控制工具和分布式版本控制工具的区别。 集中式 所谓集中式的版本控制