石景山网站开发做图表网站

news/2025/9/23 6:17:45/文章来源:
石景山网站开发,做图表网站,做垂直行业网站利润分析,国内产品设计公司前十名先说说什么是branch。按照Subversion的说法#xff0c;一个branch是某个development line#xff08;通常是主线也即trunk#xff09;的一个拷贝#xff0c;见下图#xff1a; branch存在的意义在于#xff0c;在不干扰trunk的情况下#xff0c;和trunk并行开发#xf… 先说说什么是branch。按照Subversion的说法一个branch是某个development line通常是主线也即trunk的一个拷贝见下图   branch存在的意义在于在不干扰trunk的情况下和trunk并行开发待开发结束后合并回trunk中在branch和trunk各自开发的过程中他们都可以不断地提交自己的修改从而使得每次修改在repository中都有记录。   设想以下场景如果你的项目需要开发一个新功能而该功能可能会修改项目中的绝大多数文件而与此同时你的另一位同事正在进行bug fix如果你的新功能不在branch中开发而直接在trunk中开发那么你极有可能影响另一位同事的bug fix他/她在bug修复中可能会遇到各种各样的问题因为你的频繁提交代码引入了过多的不稳定因素。你可能会说那我在开发的过程中不提交不就行了 等到我全部开发结束我再提交是你可以这么做那还要版本控制干什么呢也许等到你最后提交代码的时候也许一周也许两周你会发现有一大堆 conflict等着你resolve。。。   那么正确的做法是什么使用branch从trunk创建branch然后在你的branch上开发开发完成后再合并到trunk中。   关于branch先讲到这里下面说说什么叫做合并。很好理解当branch开发完成后包括必要的测试将branch中的修改同步到trunk中这个过程有可能包括修改文件、增加文件、删除文件等等。   说到这里貌似本文差不多可以结束了不就是分支和合并么只要再简单地说说如何建立分支和如何合并就可以收尾了可能只需两个命令也可能只需鼠标点几 下然后键盘敲两下即可。其实事情远非这么简单爱动脑筋的同学可能会问了将branch的改动merge到trunk的时候和上文说的直接在 trunk中全部开发完然后提交有何区别你最后还不是要处理一大堆conflict   这个问题问得非常好其实这正是本文的重点branch和trunk在并行开发的过程中如何感知对方branch如何才能在开发过程中不会和 trunk越走越远导致最后无法合并试想一下如果在你开发branch的过程中trunk中的某个类文件已经被删除了这可能是另外一个家伙在另 一个branch上开发了两周后才合并到trunk的而你竟然在这个类文件上做了大量修改试问你到最后合并回trunk的时候该有多蛋疼解决这一 问题的唯一手段是branch要不停地和trunk保持同步你要及时地知道trunk都做了什么修改这些修改是否会影响你正在开发的新功能如果需 要你必须及时调整branch的代码使之能与trunk“兼容”。   那么如何让branch和trunk保持同步合并从trunk合并到branch你没听错是从trunk合并到branch。关于TortoiseSVN的合并有几点需要注意 TortoiseSVN的合并发生在本地也即你的working copy中你无需过多担心会对repository中的代码造成影响不管是从trunk合并到branch还是最终从branch合并回trunk在每次合并前最好先update然后将本地的修改先全部commit保护好现场万一合并不理想随时都可以revert合并完成后看是否能正确编译然后测试验证最后将合并后的改动提交到repository    下面我将step by step地演示如何一次完整的branching和merging包括创建分支、分支开发、分支和主线同步分支合并到主线的全过程甚至包括如何在本地创建一个测试用的repository。   首先需要安装TortoiseSVN我安装的版本是TortoiseSVN 1.6.15, Build 21041 - 32 Bit , 2011/03/23 18:00:27   1、本地Repository的创建 repository的创建很简单假设我要在D:\TortoiseSVN\TestRepository目录中创建repository只需右键 TestRepository目录依次选择TortoiseSVN - Create repository here便完成了repository的创建。   2、Check out 假设要check out到D:\TortoiseSVN\TestSVN同样很简单在D:\TortoiseSVN目录下创建TestSVN目录然后在该目录上右 键选择SVN Check out...在弹出的窗口中的URL of repository中填入file:///D:/TortoiseSVN/TestRepository其他默认即可最后点击ok。   3、trunk创建新项目MyProject 相当简单就不赘述了只列出本次操作所作出的修改   4、创建branch 在/trunk/MyProject目录上右键依次选择TortoiseSVN - Branch/tag...在弹出窗口的To URL中填入分支的地址在这里目标revision选择HEAD revision如下图所示添加log后点击ok分支便建立了。这个操作速度非常快新建的branch在repository中其实只是一个指向 trunk某个revision的软连接而已并没有真的复制文件。   5、Check out分支 右键TestSVN目录选择TortoiseSVN Update即可将刚刚建立的分支下载回本地。进入/branches/MyProject目录下你会发现其文件结构和/trunk/MyProject一模一样。   6、branch提交一个新文件   7、trunk紧接着提交一个修改   8、branch再次提交一个修改   9、将trunk中的修改同步到branch 6-8演示的是branch和trunk在独立、并行地开发。为了防止在“错误”的道路上越走越远现在branch意识到是时候和trunk来一次同步了将trunk合并到branch。 首先在本地trunk中先update一下有冲突的解决冲突保证trunk和repository已经完全同步然后在/branches /MyProject上右键依次选择TortoiseSVN - “Merge...”在弹出的窗口中选择第一项Merge a range of revision这个类型的Merge已经介绍得很清楚适用于将某个分支或主线上提交的多个revision间的变化合并到另外一个分支上。   点击next后出现如下窗口   由于是要从trunk合并到branch理所当然这里的URL to merge from应该填trunk的路径Revision range to merge很好理解就是你要将trunk的哪些revision所对应的变化合并到branch中可以是某一连串的revision比如 4-715-HEAD也可以是某个单独的revision号。由于在r4中trunk修改了Person.java中的talk()方法所以这里 的revision只需填4即可。点击next后出现下图   在这里只需保留默认设置即可。在点击Merge按钮前你可以先Test merge一把看成功与否以及merge的详细信息。点击Merge按钮后trunk所做的修改将同步到branch中。   10、提交合并后的branch   至此branch已经完全和trunk同步branch和trunk的代码相处很融洽没有任何冲突如果branch已经开发结束那是时候将branch合并回trunk了当然如果branch还要继续开发那你将不断地重复6-10这几个步骤。   11、将branch合并回trunk 在/trunk/MyProject上右键注意是在主线的目录上右键依次选择TortoiseSVN - Merge...在弹出的窗口中Merge type选择第二项Reintegrate a branch这种类型的合并适合在分支开发结束后将所有的改动合并回主线。   点击next后出现如下窗口   在这里From URL选择/branches/MyProject无需选择revision号Reintegrate会将branch上所有修改合并到 trunk。后面的步骤和上文第9步中的一样不再啰嗦了。如无意外branch将成功合并到trunk你需要做的只是将合并后的trunk赶紧 commit   12、提交合并后的trunk so easy...   13、删除branch 如果你认为你新加的功能已经开发完成了你可以删除你的分支     到这里我已经给你演示完了整个过程我一身的汗也下来了我想罢工了不过最后我们还是看看所有的log信息吧通过log能发现我们干的所有事情   r1-r7正是我上文在干的事情从Message中你能发现我对trunk和branch都干了什么另外在Log Messages窗口的左下角勾选了Include merged revisions你还能看到额外的Merge information   图中灰色的是和merge相关的log共发生了两次merge第一次是在r6在r6中branch合并了trunk在r4时提交的变化第二次是在r7在r7中trunk合并了branch从r2到r6的所有变化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/911570.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站的费用多少合适手机个人网站制作教程

Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发…

怎么提升搜狗网站排名有免费网站推荐吗

目录 摘要 引言 CPU内存监控 磁盘监控 网络监控 GPU监控 帧率监控 总结 摘要 本文介绍了网络性能监测的重要性,并详细介绍了一款名为克魔助手的应用开发工具,该工具提供了丰富的性能监控功能,包括CPU、内存、磁盘、网络等指标的实时…

杭州网站建设服务wordpress 启用主题

概述 【例】通过按钮来控制一个电梯的状态,一个电梯有开门状态,关门状态,停止状态,运行状态。每一种状态改变,都有可能要根据其他状态来更新处理。例如,如果电梯门现在处于运行时状态,就不能进…

中国做网站的公司广州北京网站建设公司

NetBeans IDE是开发各种应用程序的绝佳选择。 具体来说,我每天都使用它来开发和维护Java EE应用程序。 在过去的几个发行版中,不仅Java EE的生产力提高了,而且NetBeans IDE还减少了开发应用程序的时间……使Java EE和NetBeans成为绝配&#x…

统一门户网站建设规范app制作教程视频全

📢📢📢📣📣📣 哈喽!大家好,我是「奇点」,江湖人称 singularity。刚工作几年,想和大家一同进步🤝🤝 一位上进心十足的【Java ToB端大厂…

建设工程项目报建网站给网站做优化刷活跃要收费吗

一.背景 由于最近客户定制需要将文件挂载类型修改为sdcardfs,由于修改了文件挂载类型,导致了骁龙相机录像后不显示左下角缩略图,也不能点击进入相册中,相册里面也没有录制的视频,故对骁龙相机从点击事件开始进行问题的排查 二.流程介绍 录像的流程大概分为几个阶段:进行…

阿里云购买网站登录服务器租用价格

给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串的长度 示例 1: 输入: s "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s "bbbbb"输出: 1解释: 因为无重复字…

二手书网站建设报告做设计学什么英语比较好的网站

工地安全帽工作服检测Y8S,采用YOLOV8S训练模型,然后使用OPENCV的DNN调用,彻底拜托PYTORCH依赖,可以在C,PYTHON,ANDROID上跑。附件是C生成的效果测试(只需解压将图片或者视频放入VIDEOS文件夹,文件夹没图片或…

毕业设计代做网站都可信么学校文化建设聚奇网站

号外:教链内参12.27《美元快速下行,黄金再创新高》 日前,微策略(Microstrategy)创始人Michael Saylor发推称,微策略再次出手,以均价约42110刀再次加仓14620枚BTC。截至2023.12.26,微…

时代设计网 新网站惠阳住房与规划建设局网站

一,单片机的概念 单片机(Single-Chip Microcomputer),也被称为单片微控制器,是一种集成电路芯片。它采用超大规模集成电路技术,将具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、…

做电脑网站用什么软件好用吗三台网站seo

1、 多头注意力层 下图展示了Transformer模型中的编码器和解码器。我们可以看到,每个解码器中的多头注意力层都有两个输入:一个来自带掩码的多头注意力层,另一个是编码器输出的特征值。 让我们用R来表示编码器输出的特征值,用M来…

怎样设置网站开发商和承建商的区别

软件架构(业务流程) 基于前端系统提供的硬件通信平台,后端系统以控制执行单元为核心,协同控制通信管理、驱动适配、存储单元等职能单元完成与前端系统的通信数据交互业务,在经历以下业务流程后,完成设备自适应通信业务功能。 1.外部设备通信前端系统 前端系统连接新的…

网站开发挣不挣钱wordpress像微博

作者 | Addo Zhang来源 | 云原生指北GitHub Actions 是一个功能强大、“免费” 的 CI(持续集成)工具。与之前介绍的 Tekton 类似,GitHub Actions 的核心也是 Pipeline as Code 也就是所谓的流水线即代码。二者不同的是,GitHub Act…

用什么建设网站自己怎么做入网站回收书报

要实现的内容&#xff1a;手写签名&#xff0c;协议内容。点击提交后&#xff1a;生成1张图片&#xff0c;有协议内容和签署日期和签署人。 实现的效果图如下&#xff1a; 1、签名页面 <template><view class"index"><u-navbar title"电子协议…

根据链接获取网站名称wordpress后台慢js

书接上回&#xff0c;经过连续两期使用人工神经网络对福彩3D进行预测&#xff0c;经过不断的调参优化&#xff0c;并及时总结规律&#xff0c;感觉还是有一定的信心提高七码的命中概率。 今天&#xff0c;咱们继续来验证&#xff0c;直接上今天的统计结果&#xff0c;首先&…

网站开发语言字典99作文网官网

好久没有上来了。也没有什么好说的。最近在做基于SVG开发的一个实时监测系统&#xff0c;感觉目前SVG性能还不是太好&#xff0c;客户端CPU不经意间就达到80%以上了。向老板提出辞职&#xff0c;不过老板没有同意&#xff0c;最终协商结果再做三个月&#xff0c;直到新人完全接…

网站开发的时间流程英文网站建设口碑好

文/张铎“机器人在2029年能够达到人类的水平”张铎(以下简称张)&#xff1a;在今年的CES大展上&#xff0c;我们看到了能从手掌上起飞的自拍无人机&#xff0c;电视的分辨率都出到了8K的清晰度&#xff0c;像在去年的CES上还是4K的&#xff0c;发展非常迅速&#xff0c;然后今年…

建设厅网站打不开建筑学专业大学世界排名

随着城市化进程的加快&#xff0c;公厕作为城市基础设施的重要组成部分&#xff0c;扮演着不可忽视的角色。然而&#xff0c;传统的公厕粗放型管理模式&#xff0c;已经无法满足市民日益增长的需求。为了提升公厕的管理和服务水平&#xff0c;智慧公厕应运而生。 什么是智慧公…

化州市住房和建设局网站西安优化官网公司

1 glog 使用 CMakeLists.txt 来组织和构建包含 glog 的项目是一个很好的选择。下面是一个如何使用 CMake 与 glog 的例子。 项目结构: ├── CMakeLists.txt └── main.cppCMakeLists.txt: cmake_minimum_required(VERSION 3.10) project(GlogExample)# 设置C++标准为C++11…