- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
内容简介 1 Subversion简介 2 版本控制的基本原理 3 Subversion基础 4 Subversion基本工作流程及基本操作 CheckOut,Commit,Update,Status 5 Subversion高级操作 Branch/Tag,Merge 6 Subversion其他操作(演示) 7 常见Subversion的GUI客户端使用(演示) 1 Subversion简介 Subversion的作用 Subversion的历史 Subversion的特性 Subversion的架构 Subversion的作用 一个自由,开源的版本控制系统 一个通用系统,不是简单的一个SCM系统 以替代CVS为目标 可以管理任何类型文件,并且追踪变更 不具有某些和开发紧密结合的特性,如支持某种特定的编程语言,集成构建工具等 应用:版本管理,网络硬盘?? 网址: Subversion的历史 2000年,CollabNet公司开始寻找CVS的替代产品 2月,这个公司联系了Open Source Development with CVS的作者Karl Fogel,他同意为这个项目工作。同时,他还联系了其他几个人一起开发这个新系统 3月,Subversion开始详细设计和编码 2001年8月31日,Subversion第一个完整版本问世 经过1.0,1.1,1.2直到现在的1.4.3版 Subversion的特性(和CVS比较) 和CVS的相似性 目录的版本化 更加好的文件版本管理(例如对文件拷贝,重命名的处理) 提交的原子性 元数据的版本化 可选的网络层 对文本文件和二进制文件一致的差异比较算法 高效的分支(branch)和标签(tag)操作 良好的可维护性 Subversion的架构 2 版本控制的基本原理 客户/服务器架构的版本控制简述 版本控制的数据共享模型 数据共享的问题 锁定-修改-解锁方案 拷贝-修改-合并方案 冲突及解决 两种方案的对比及选择 Subversion的实现 客户/服务器架构的版本控制 版本库(Repository):按照一定格式存储了所有数据,包括文件和目录 经过授权的客户端可以连接到版本库,读写库中的文件 版本库和普通文件服务器的不同:版本库会记录每一次的更改,所以,客户端可以任意查询更改的历史。例如:ApplicationContext.java的1451版和1450版相比修改了什么?谁作的修改?什么时候作的修改?等等 版本控制数据共享模型 版本控制系统的核心任务:协作编辑和数据共享 基础问题:怎样允许用户共享信息,并且不会因意外而互相干扰? 数据共享问题的产生 解决办法 数据共享问题 解决方案1——锁定-解锁方案 锁定-解锁方案的问题 可能导致管理问题,如长期锁定文件不放 会导致不必要的顺序开发 可能导致死锁 例如Sally和Harry都需要修改plugin_mgr.c和plugin_mgr.h,两者互相关联,Sally锁定了.c文件而Harry锁定了头文件,就会进入死锁状态 解决方案2——拷贝-修改-合并方案 (续图……) 冲突(Conflict)及解决(Resolve) 冲突的产生:冲突是随着拷贝-修改-合并方案的产生而带来的问题。两个开发者使用拷贝-修改-合并方案编辑同一个文件,并且两人的修改发生了交叠时就发生了冲突 冲突的解决:当冲突发生时,开发者会看到一对冲突的修改结果,通常情况下,必须让引起冲突的两个人商议之后,手动选择保留一组更改。在这里,版本控制系统只能提示冲突的发生而无法给出解决建议 冲突的预防:增加开发者的交流可以最大限度减少冲突的发生,但是不可能杜绝冲突 后面可以看到冲突的具体例子以及解决办法 两种方案的对比及选择 虽然锁定-解锁方案有很多的弊端,但在一些情况下仍然是必须的;虽然拷贝-修改-合并模型能解决大多数问题,但它也不是万能的 比较:文本文件和二进制文件的特点 选择:拷贝-合并模型假定文件是可以通过上下文合并的。通常情况下,文本文件(例如源代码以及用纯文本,HTML,TeX等格式保存的文档)因为其内部结构直观可知,容易理解上下文,所以用拷贝—合并方案较好。而二进制文件(例如用Microsoft Word格式,PDF等格式保存的文档及图片,声音,可执行文件,库等)内部结构复杂,且不容易理解更改处的上下文,采用锁定-解锁方案较好 Subversion的实现 Subversion主要采用拷贝-修改-合并模型,配合锁定-解锁模型管理数据的共享 3 Subversion基础 基本概念 工作拷贝(Working Copy) 修订版本(Revision) 文件状态 混合修订版本的工作拷贝 工作拷贝(Working Copy) 工作拷贝是本地机器的一个普通的目录
您可能关注的文档
- 自动集群侦测.ppt
- 自动自发员工精神--做老板最愿意培养的员工.ppt
- 自行分配中一学位.ppt
- 自然经济逐渐解体.ppt
- 自然语言处理NaturalLanguageProcessing(NLP).ppt
- 自我成长与培力.ppt
- 自由落体运动.ppt
- 自主学习、合作学习、探究学习.ppt
- 阿基米德,古希腊伟大的数学家、力学家。.ppt
- 阿胶CollaCoriiAsini本品为马科动物驴Equusasinus.ppt
- 剧本杀行业报告:内容创作规范与剧本市场拓展策略.docx
- 剧本杀行业区域市场区域文化特色与市场潜力分析报告.docx
- 剧本杀行业区域市场拓展实战案例研究.docx
- 剧本杀行业区域市场拓展路径与模式探索报告.docx
- 剧本杀行业区域市场竞争态势与品牌差异化策略研究报告.docx
- 剧本杀行业2025年西北区域市场市场细分领域竞争态势与品牌竞争策略分析研究报告.docx
- 剧本杀行业2025年西北市场拓展前景预测报告.docx
- 剧本杀行业2025年长沙市场发展潜力分析报告.docx
- 剧本杀行业2025年长三角市场竞争策略与布局分析.docx
- 医疗行业数据合规:2025年数据安全法实施后的合规监管挑战与应对.docx
最近下载
- 手术室人员行为管理与规范.pptx VIP
- 2025年呼和浩特市土默特左旗社区工作者招聘考试试题 .pdf VIP
- 卫生院优质服务基层行创建资料(1.1.2主要任务).docx VIP
- 2025年教职工疗休养服务项目212页.docx VIP
- 2025年内蒙古自治区中考语文试题卷(含答案解析).docx
- 中学生英才计划面试常见问题.docx VIP
- 社会组织矛盾纠纷排查化解工作总结.pptx VIP
- 近十年管综数学真题.pdf VIP
- 13、安放式支管台组对焊接.pptx VIP
- SIEMENS西门子 SIMATIC ET 200SP 电机启动器 (3RK1308‑0..00‑0CP0)设备手册.pdf VIP
文档评论(0)