实验一 GIT 代码版本管理
实验目的:
1)了解分布式分布式版本控制系统的核心机理;
- 熟练掌握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)实验内容结果的截图
1)安装git
有很多的方法可以安装git,不同的系统需要选择不同的版本。通常情况下官网是安装软件的最好地址,但是由于在官网上安装速度非常慢,所以这里使用镜像站安装,使用阿里镜像https://npm.taobao.org/mirrors/git-for-windows/v2.22.0.windows.1/, 下载安装即可。
2)初始配置git ,git init git status指令
初始配置git
这里设置初始用户名和密码
$ git config --global user.name "MyName"
$ git config --global user.email "[email protected]"
进行设置
git config --global core.editor "code --wait"
展示设置
git config --list
git init
使用git init
创建一个新的仓库
3)掌握git log ,git add ,git diff 指令
在创建了仓库之后,进入course-git-blog-project目录,可以使用cd命令进入,使用git log
查看历史记录
创建一个文件index.html,使用git add
命令添加
git add css/app.css js/app.js
OR
git add. #it means adding all files in the current directory including nesting directory
4) 掌握git tag git branch,git commit 指令
git tag
先使用tag log
查看当前的log记录
再使用git tag
命令进入:
此后会打开编辑器,输入我们需要的标签信息,如:ready for content
注意:在上述命令 (git tag -a v1.0) 中,使用了 -a 选项。该选项告诉 git 创建一个带注释的标签。如果你没有提供该选项(即 git tag v1.0),那么它将创建一个轻量级标签。
建议使用带注释的标签,因为它们包含了大量的额外信息,例如:
标签创建者
标签创建日期
标签消息
因此,应该始终使用带注释的标签。
使用$ git tag -d v1.0
可以删除标签
git log -a v1.0
只能向最近的commit添加标签, 如果需要向以前的记录添加标签则需要提供SHA号
先使用git log --oneline
查询SHA号
再使用git tag -a v1.0 860a416
向指定commit添加标签
v1.1版本添加成功
git branch
git branch
作用:
-
列出仓库中的所有分支名称
-
创建新的分支
-
删除分支
创建分支:e.g.git branch sidebar
切换分支:git branch checkout
此操作会:
-
从工作目录中删除 git 跟踪的所有文件和目录(git 跟踪的文件存储在仓库中,因此什么也不会丢失)
-
转到仓库,并提取分支指向的 commit 所对应的所有文件和目录
提示符将显示活跃分支。但这是我们对提示符进行的特殊自定义,如果你使用的是不同的计算机,判断活跃分支的最快速方式是查看 git branch
命令的输出结果。活跃分支名称旁边会显示一个星号。
删除分支:git branch -d sidebar
注意,无法删除当前所在的分支。因此要删除 sidebar 分支,你需要切换到 master 分支,或者创建并切换到新的分支。
要强制删除,需要使用大写的 D 选项
先前换成master分支再删除sidebar分支成功
git commit
git commit index.html -m "Add header to blog"
加上提示信息
5)掌握git revert 指令
用来还原更改的命令git revert 2c3a381
还原成功
2)实验过程中发生的问题与解决
一开始的时候,使用git commit
始终无法成功,原来是需要再使用git commit
前先添加文件,而且,文件创建的位置很重要,如果出现目录错误,则无法正常的git add
和git commit
。
合并分支的时候容易出错,如果完全相同的行在不同的文件中更改了,那么git就无法知道具体应该选择哪一个版本,所以在操作中应该尽量避免这种现象。
实验总结与体会:(以下内容根据各自实验情况填写)
通过本次实验,我了解了一些关于分布式分布式版本控制系统的核心机理,以及掌握git的基本指令和分支管理指令,实验的总体难度不大,但是步骤却略有繁琐,通过本次实验,我学会了如何进行版本控制,为以后网页网站的开发,提供了必不可少的基础知识。
思考题:(以下内容根据各自实验情况填写)
阅读维基百科和百度百科 的Git词条,总结分布式分布式版本控制系统的核心机理
分布式版本控制类似于每个人都可以创建一个独立的代码仓库用于管理,各种版本控制的操作都可以在本地完成。每个人修改的代码都可以推送合并到另外一个代码仓库中。从而将各个不同版本的代码分开存放,也可以加强程序员之间的协同合作。