实验目的:
(1)了解分布式版本控制系统的核心机理;
(2)熟练掌握git的基本指令和分支管理指令;
实验内容:
(1)安装git;
(2)初始配置git,git init,git status指令
(3)掌握git log,git add,git diff指令;
(4)掌握git revert指令;
实验记录:
一、初次配置git,设置用户名,邮箱等:
二、从头创建仓库
(1)创建项目目录,运用mkdir创建一个叫se2020-git-course新目录,并在其中创建另一个名叫new-git-project的目录,运用cd转到该目录下,然后再终端运行git init,生成一个空仓库
(2)运用git clone克隆现有的仓库,然后再运用git status查看当前状态
(3)运用git log命令显示仓库中所有commit的信息
(4)git log --stat将会显示被修改的文件,显示添加删除的行数和一个摘要,其中包含修改删除的总文件数和总行数,
(5)运用 git log -p显示对文件作出实际更改的选项
(6)通过提供SHA,运用git log -p命令或git show 命令将显示这条特定的commit
(7)首先进入到new-git-project目录下,添加新文件,运用git add .将新文件移到暂存区
(8)在提交commit之前,首先配置代码编辑器,然后再运行git commit,此时终端处于冻结状态,我们可以在弹出的代码编辑框里输入信息,然后完成提交
(9)然后提交第二个commit,并添加提交说明Add header to blog
(9)首先将index.html中的标题改为Adventure,保存文件,然后运用git diff进行查看
(10)使用git tag命令与仓库的标签进行交互,输入git tag -a v1.0,然后在弹出的代码编辑框里输入ready for content作为tag,然后运用git tag显示标签,运用git log验证标签
可运用git tag -d v1.0删除标签
(11)运行git tag -a v1.0 eff5d50将会向SHA为eff5d50的commit添加V1.0的标签,运行git tag -a beta向最近的commit添加标签
(12)使用git branch创建一个名siderbar的分支,并运用git checkout转向该分支,然后运用git log --oneline显示所有的分支,运用git branch将会显示活跃分支
(13)运用git branch -d siderbar将会删除该分支,但由于此时处在该分支上,所以无法删除
(14)首先回到master分支上,运用git merge siderbar合并分支
(15)如果实验过程中,出现错误,可运用git branch backup返回这些commit
实验总结与体会:
通过本次实验对于git有了一些初步的了解,学会了一些git命令所表达的意思。本次实验中,对所处目录,所处分支上出现了多次错误,需要更加的细心。
思考题:
阅读维基百科和百度百科的git词条,总结分布式版本控制系统的核心机理
答:我认为git的核心机理是通过从服务器克隆完整的git仓库,根据目的创建分支,修改代码,然后在自己的分支上提交代码,合并分支,从而来解决开发者之间的冲突问题。