版本管理与控制工具的综合应用
实验学时:9
实验类型:(演示、验证、√综合、√设计、研究)
实验要求:(√必修、选修)
一、实验目的
通过本实验的学习,掌握目前比较流行与优秀的版本管理与控制工具的基本用法,理解和掌握版本管理与控制必要性及其实践意义;结合软件服务外包理论知识,重点掌握在软件项目开发中使用版本管理与控制工具进行统筹管理与控制的技巧和方法,从而提高项目开发的工作效率、降低管理与控制成本、增强团队合作优势、提升综合实践能力。
二、实验内容
模块一:SVN环境的搭建及使用;
模块二:SVN与MyEclipse10.0的综合应用;
模块三:Git环境的搭建及使用;
三、实验要求
1、按照三个模块所需的软件工具,在自己的电脑上进行环境的搭建与配置;
2、首先实现单机运行环境下服务端和客户端的安装与配置,其次实现局域网络环境下(两人以上为一组)服务端和客户端的安装与配置;
3、结合自身文档管理或项目版本管理与控制的使用需求,举例阐述工具的具体功能(以亲自操作为主,不能粘贴其他虚拟资料);
4、按照下面的方法和步骤进行文档的整理与写作,力求图文并茂,排版合理;
5、单机环境下的报告内容不允许雷同,网络环境下的报告内容以组为单位,可以相同,但组员不超过2人,必须附组员名单;
6、报告格式以此文档为准,只需在相应实验过程体系下增加详细实践内容即可,不得更改文档结构;
7、报告的电子文档统一以“学号+姓名.docx”重命名,然后提交至蓝墨云班课的相应任务里,三次实验完成后的最终版本提交至“期末最终任务”里。(班课号:9643988)
8、完成周期为一周,12月25日前务必提交完毕。
四、实验原理、方法和步骤
模块3
Git环境的搭建及使用
1)单机环境搭建与配置;(Git客户端)
首先去官网下载git,https://git-scm.com
然后一路继续按钮安装成功。
接着配置环境变量
使用命令行查看版本
安装成功。
cd 当前文件夹路径。
使用git init来初始化本地仓库,原目录下会出现.git文件夹,里面存放着有关git和版本记录的信息。
然后添加一个文件修改。
先使用git status 来查看修改的文件
通过idea打开项目就可以进行commit和push
2)网络环境搭建与配置;(服务端与客户端分离)
在Gitee上新建一个仓库
建立好查看目录
进行项目初始化被远程链接
- Git与IDEA的综合应用
选择从版本控制导入
建立新的文件,进行commit
在push以后在远程gitee查看
查看提交历史
Pull代码
Revert进行恢复文件
Update代码
Merge代码
改动代码并且提交
与SVN比较:
Git是分布式SCM,而SVN是基于服务器的,也就是说每个开发者本地都有一套git库,每个人维护自己的版本(或者合并其他人的版本),而SVN是每个人写完代码后都及时的checkin到服务器上,进行合并。
Git优势:
1、版本库本地化,支持离线提交,相对独立不影响协同开发。每个开发者都拥有自己的版本控制库,在自己的版本库上可以任意的执行提交代码、创建分支等行为。例如,开发者认为自己提交的代码有问题?没关系,因为版本库是自己的,回滚历史、反复提交、归并分支并不会影响到其他开发者。
2、更少的“仓库污染”。git对于每个工程只会产生一个.git目录,这个工程所有的版本控制信息都在这个目录中,不会像SVN那样在每个目录下都产生.svn目录。
3、把内容按元数据方式存储,完整克隆版本库。所有版本信息位于.git目录中,它是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签、分支、版本记录等。
4、支持快速切换分支方便合并,比较合并性能好。在同一目录下即可切换不同的分支,方便合并,且合并文件速度比SVN快。
5、分布式版本库,无单点故障,内容完整性好。内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。