Git代码版本管理实验

洪培 2020-03-02 21:13:00
原文地址:https://www.cnblogs.com/hp8751/p/12397660.html

实验目的:

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指令;

实验记录:

1)安装Git:

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

![]()

2)初始化Git:

创建工作目录:

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

![]()

设置用户名:

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

设置用户邮箱:

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

![]()

初始化一个新的Git仓库:

在"Git仓库"文件夹下右击鼠标,选择"Git Bash Here",在DOS窗口中输入"git init",回车。文件夹下随即出现".git"文件。

![]()

![]()

3)向仓库添加文件:

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

![]()

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

![]()

之后输入命令"git config --global user.name 'Guanine'",回车。再输入命令"git config --global user.email '875184091@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 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
分布式的版本控制就是每个人都可以创建一个独立的代码仓库用于管理,各种版本控制的操作都可以在本地完成。每个人修改的代码都可以推送合并到另外一个代码仓库中。

声明:该文章系转载,转载该文章的目的在于更广泛的传递信息,并不代表本网站赞同其观点,文章内容仅供参考。

本站是一个个人学习和交流平台,网站上部分文章为网站管理员和网友从相关媒体转载而来,并不用于任何商业目的,内容为作者个人观点, 并不代表本网站赞同其观点和对其真实性负责。

我们已经尽可能的对作者和来源进行了通告,但是可能由于能力有限或疏忽,导致作者和来源有误,亦可能您并不期望您的作品在我们的网站上发布。我们为这些问题向您致歉,如果您在我站上发现此类问题,请及时联系我们,我们将根据您的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。