Git代码版本管理实验

  1)了解分布式版本控制系统的核心机理;

  2)熟练掌握git的基本指令和分支管理指令;

实验内容:

  1)安装git;

  2)初始配置git,git init,git status指令;

  3)掌握git log,git add,git diff指令;

  4)掌握git tag,git branch,git commit指令;

  5)掌握git revert指令;

实验记录:

实验内容结果的截图

安装git:从官方网站上下载安装包,之后安装到D盘,安装成功后在桌面右击鼠标,出现“Git GUI Here”和“Git Bash Here”即可说明Git安装成功。

  1. 初始配置git:在开始使用 Git 之前,需要配置 Git。在命令行工具中运行以下每行,确保所有选项都已被配置好。

           # 设置你的 Git 用户名:git config --global user.name "<Your-Full-Name>"

           # 设置你的 Git 邮箱:git config --global user.email "<your-email-address>"

           # 确保 Git 输出内容带有颜色标记:git config --global color.ui auto

           # 对比显示原始状态:git config --global merge.conflictstyle diff3 git config --list 

     运行过程及结果如下图所示:

1) 设置用户名:

  在“Git文件”文件夹下右击鼠标,选择“Git Bash Here”,在弹出的DOS窗口中输入“git config --global user.name 'zhangchaojun',然后点回车。

设置用户邮箱:

  在“Git文件”文件夹下右击鼠标,选择“Git Bash Here”,在弹出的DOS窗口中输入“git config --global user.email '1690057723@qq.com'”,回车即可。如下图所示:

初始化Git:

创建工作目录:

  在我的D盘下建立一个命名为se2020-git-course 的目录,在该目录中再创建另一个叫做 new-git-project 的目录并使用 cd 命令移到 new-git-project 目录下。代码如下图:

 

 

 

 2)初始化一个新的Git仓库:

  输入"git init",回车。 

 

 

 

 

 

  3)向仓库添加文件:

输入"touch test1.php",回车,即可创建一个test1文件。如下图所示:

 

 

 

 之后输入"git status"命令,回车,再输入"git add test1.php"命令,将test1文件提交到暂存区,如下图所示:

 

 

  然后输入命令"git config --global user.name 'zhangchaojun",回车。再输入命令"git config --global user.email '1690057723@qq.com'"回车。然后输入命令"git commit -m '将暂存区文件添加到仓库'",回车,即可将文件添加到仓库中,之后用"git status"命令检验是否添加成功

 

 

 

 

   4)修改仓库文件:

输入命令"vi test1.php",回车,进入文件中,即可修改文件内容,如图所示:

 

 

 

 

 之后按照上面的步骤将修改过后的文件提交到仓库。

   5)使用git diff命令查看修改

首先修改test1.php的内容,不提交,之后输入命令"git diff",回车,即可看到所做出的修改,如下图所示:

 

 

 

   6)git log命令

在"Git 仓库"文件夹下输入"Git log"命令,回车,

 

 

 

  7)标签

通过在命令行输入命令"git tag -a 第一次定义标签"来创建一个标签,之后通过命令"git tag"来验证标签是否创建成功,如下图所示:

 

 

 

通过输入命令"Git log"来获得标签在仓库中的位置,如下图所示:

 

 

 

删除标签的方法为:在命令行输入命令"Git tag -d 第一次定义标签",回车即可:

 

 

标签已被删除。

  8)分支

 查看现有分支,输入命令"git branch",创建一个新的分支,输入命令"git branch 第一次创建分支",并通过命令"git checkout 第一次创建分支"切换到新创建的分支上

 

 

 

 由图可见,分支已经切换成功,由原来的"master"切换为"第一次创建分支"。

通过输入命令"git log --oneline"来显示分支, 最后,通过命令"git branch -d 第一次创建分支"来删除新建的分支,可见并不能删除

 

 

有以下三种情况不能删除分支:

1)如果某个分支上有任何其他分支上都没有包含的 commit(也就是这个 commit 是要被删除的分支独有的),git 不会删除该分支。

2)如果你创建了 sidebar 分支,向其添加了 commit,然后尝试使用 git branch -d sidebar 删除该分支,git 不会让你删除该分支,因为你无法删除当前所在的分支。

3)如果你切换到 master 分支并尝试删除 sidebar 分支,git 也不会让你删除,因为 sidebar 分支上的新 commit 会丢失!要强制删除,你需要使用大写的 D 选项 - git branch -D sidebar。

通过如下图所示方法来删除新建的分支即可:

 

 

 可见分支已经被删除。

  9)合并

在活跃分支下使用命令"git merge <other-branch>"便可合并分支。

  10)撤销更改

使用命令"git commit --amend"来更改最近的commit,结果如下。

 

 

 

 

 

 

 

实验总结与体会:

开始做实验的时候,不知道如何下手也不知道各种指令的意思,通过看老师提供的资料以及询问同学,了解了指令的含义,因为不熟练,所以花费了较长的时间。过程中也经常犯些低级错误,重新做了好几遍,希望以后会越来越好。

实验问题:

阅读维基百科和百度百科 的Git词条,总结分布式版本控制系统的核心机理

答:Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。系统保存的的不是文件变化的差量,而是文件的快照,即把文件的整体复制下来保存,而不关心具体的变化内容。其次,Git实际上是通过维持复杂的文件树来实现版本控制的。Git保存文件的完整内容,不保存差量变化。SHA-1 校验和是文件的指针,Git依靠它来区分文件。

Git 是用于 Linux内核开发的版本控制工具,采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快, 它的合并跟踪能力强。Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。作为开源自由原教旨主义项目,Git 没有对版本库的浏览和修改做任何的权限限制,我们可以通过git增加内容,提交内容,管理分支。

 
posted @ 2020-03-10 15:45  兜里放了橘子  阅读(249)  评论(0编辑  收藏  举报