全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本节和大家一起学习一下 SVN 使用方法 主要从三方面来介绍 在这里和大家 分享一下 希望本节的介绍对你的学习有所帮助 SVN 使用 1 1 首先是安装首先是安装 TortoiseSVNTortoiseSVN 这个这个 WinWin 下的客户端下的客户端 当然用 subversion 自己的 svn 这个客 户端也可以完成所有操作 理论上 这个客户端是集成到 Explore 里的 所以没有什么独立的窗体 所有操作右键菜单来完成 2 2 SVNSVN 使用基本流程使用基本流程 下面说的命令都与 TortoiseSVN 菜单上的名称一致 a 初次 initial 取出 checkout repos 建立本地工作拷贝 WC WorkingCopy b 与 repos 同步 update 保证将要进行的编辑是最新版本 c 编辑源代码 包括创建 修改 删除 d 与 repos 同步 update 提交之前先要同步到最新的版本 保证所有在自 己之前的有关提交已经在本地有所知晓 e 解决冲突 resolve conflict f 提交 commit 一定要写上这次提交的内容的摘要 便于以后查阅 g 继续 b 每次开始新的编辑前的同步 repos 很重要 另外经常地 update 没有坏处 特别 是多人项目中 如果每次提交 commit 前不 进行更新 update 的到最新的 版本的话 svn 会提示当前的拷贝过期 需要更新 在使用的过程中 时刻注意当前的工作拷贝 WC WorkingCopy 所对应的 URL 很重要 特别是当有了 branches 和 tag 等时候 使用 svn info 可以查看到这 些信息 使用 TortoiseSVN 时 通过下面的操作查看这些信息 右键单击工作 拷贝的根文件夹 不是上级文件夹 菜单中选择则 属性 不是 TortoiseSVN 那个菜单 然后在出现的对话框中选择 Subversion 标签就可以看到了 3 3 SVNSVN 使用使用 branchesbranches 关于 branches 的内容可以在 svn book Chapter4 Branching and Merging 得到 当多个人合作 Sally 和 John 时 可能有这样的情况出 现 John 突然有个 想法 跟原先的设计不太一致 可能是功能的添加或者日志格式的改进等等 总而言之 这个想法可能需要花一段时间来完成 而这个过程 中 John 的一 些操作可能会影响 Sally 的工作 John 从现有的状态单独出一个 project 的话 又不能及时得到 Sally 对已有代码做的修正 而且独立出来的话 John 的尝 试成功时 跟原来的合并也存在困难 这时最好的实践方法是使用 branches John 建立一个自己的 branch 然 后在里面实验 必要的时候从 Sally 的 trunk 里取得更新 或者将自己的阶段成果汇集到 trunk 中 附 TortoiseSVN 帮助里的 branch 的说明 One of the features of version control systems is the ability to isolate changes onto a separate line of development This line is known as a branch Branches are often used to try out new features without disturbing the main line of development with compiler errors and bugs As soon as the new feature is stable enough then the development branch is merged back into the main branch trunk 3 1 创建 branch 详细的解释参考 svn book Chapter4 Branching and Merging Using Branches Creating a Branch 实际是 svn copy 操作 svn copy SourceURL trunk DestinationURL branchName m Creating a private branch of xxxx trunk TorToiseSVN 操作更为简单 只要在 working copy 里右键空白 然后在 TorToiseSVN 菜单中选择 Branches Tags 就可将整个目录分支 branch 出去 或者点击某个文件将 文件单独分支 branch 而且有多种选择 指定是 直 接在服务器端 copy HEAD 版本 直接在服务器端 copy 指定版本 这两种 相当于 svn copy 中源和目的都是 URL 用当前的工作拷贝 WC Working Copy 生成 同时还有一个 checkbox 用于在完成了这次分支 branch 后直 接切换 switch 当前的工作拷贝 WC Working Copy 到分支 3 2SVN 使用中 使用 merge 来应用 branch 的修改 3 2 1 trunk 的变化及时更新到 branch 例子原型出自 svn book Chapter 4 Branching and Merging Copying Changes Between Branches Copying Specific Changes 接着 前面的例子 John 在实验过程中 Sally 对原有的某个文件做了一些改动 如拼写检查等 John 知道了 希望将这些改动也放到自己的当前的工作拷贝 WC Working Copy 中 svn 中使用 merge 指令来完成 假设 Sally 的修订使 repos 从 Rev345 到了 Rev346 所以 John 就是要将 Rev345 Rev346 前 后 的 变更应用到当前的 WC 使用 TortoiseSVN 的操作就是在 WC 中右键空白处 然 后在相关菜单中选择 Merge 在弹出的对话框中 From 指定比较前项 的位置和版本 这里是 trunk 的 Rev345 To 指定后项的位置和版本 这里是 trunk 的 Rev346 可以使用一个复选框使的 To 的位置与 From 相同 相应的 svn merge 指令参考后面 merge 操作实质 可知 3 2 2 branch 最终合并回 trunk 例子原型出自 svn book Chapter 4 Branching and Merging Common Use Cases Merging a Whole Branch to Another John 经过尝试 终于实现了想法 并通过测试 现在他决定将所有的工作合 并到 trunk 去 这里要注意的是 John 打算合并的是自己的工作 假设 John 的 branch johnBranch 开始于 Rev233 John 的工作提交到 repos 是 Rev289 那么 John 的工作是将 johnBranch Rev233 到 johnBranch Rev289 的内容合并 到 trunk 而不是 johnBranch Rev233 到 trunk HEAD 因为这个变化包含了对 John 工作的增加和对 trunk 中其他人的工作的撤销 如果 John 没有及时将他 人在 trunk 的工作合并 到自己的 johnBranch 的话 TortoiseSVN 的操作是这样的 先 checkout 出 trunk 也可以 switch 到 trunk 即保证当前的工作拷贝 WC WorkingCopy 是 trunk 然后使用菜单 中的 Merge 选择 From 为 johnBranch Rev233 选择 To 为 johnBranch Rev289 相应的 svn merge 指令参考后面 merge 操作实质 可知 下面我们来看一下 SVN 使用中 merge 操作的实质 3 2 3 merge 操作的实质 svn merge 命令的原型如下 svn merge sourceURL1 N sourceURL2 M WCPATH svn merge sourceWCPATH1 N sourceWCPATH2 M WCPATH svn merge r N M SOURCE REV WCPATH In the first and second forms the source paths URLs in the first form working copy paths in the second are specified at revisions N and M These are the two sources to be compared The revisions default to HEAD if omitted In the third form SOURCE can be a URL or working copy item in which case the corresponding URL is used This URL at revisions N and M defines the two sources to be compared WCPATH is the working copy path that will receive the changes If WCPATH is omitted a default value of is assumed unless the sources have identical basenames that match a file within in which case the differences will
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门窗加盟后管理制度
- 病房护理安全管理制度课件
- 2025-2030中国骑行服空气动力学设计与竞赛性能分析报告
- 2025至2030中国摩托车保险行业市场发展分析及发展前景策略与投资报告
- 2025-2030中国漂洗助剂行业景气指数构建与预警机制研究
- 2025互联网游戏行业电竞产业发展前景与品牌赞助策略研究分析报告
- 2025互联网教育行业市场发展现状投资评估供需分析规划分析研究报告
- 2025互联网医疗行业投资前景分析市场发展策略研究报告
- 2025互联网医疗行业市场发展分析及趋势预测与投资管理策略研究报告
- 2025云计算平台建设运营服务质量分析报告
- 2026年法律常识题库200道附参考答案【黄金题型】
- 静学系列主题班会课件:自习的“静”成长的“劲”
- 上海黄金交易所从业考试及答案解析
- 大陈唯舞课件
- 2025科级领导干部理论考试试题及答案
- 先天性心脏病护理
- 水声换能器装配工标准化作业考核试卷及答案
- 数字化转型与AI赋能智慧城市建设中的社会治理研究报告
- 监理工程服务方案(3篇)
- 人教PEP版(2024)四年级上册英语-Unit 5 The weather and us 单元整体教学设计(共6课时)
- 活性炭生产工作业指导书
评论
0/150
提交评论