第一次git实验

实验一  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 指令

 

实验记录:

1)实验内容结果的截图



初次配置 Git

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

 

从头创建仓库

(1)在对 Git 仓库进行 commit 或执行任何其他操作之前,需要一个实际存在的仓库。要使用 Git 新建一个仓库,我们将使用 git init 命令。

(2)创建一个目录,叫做 se2020-git-course,在该目录中,创建另一个目录,叫做 new-git-project,使用 cd 命令移到 new-git-project 目录下。

 

(3)运行git clone克隆现有的仓库,然后git status查看克隆结果。

(4)git log,克隆course-git-blog-project 仓库后,使用cd course-git-blog-project行转到项目的目录下。

git log --stat 

The git log 命令有一个选项可以用来显示 commit 中更改的文件以及添加或删除的行数。

 

git log -p

git log 命令具有一个可用来显示对文件作出实际更改的选项。

 

添加新文件,并使用git status 检查状态

进入到new-git-project,首先,创建一个叫做 index.html 的文件,并添加一些起始代码然后建立 js 和css 文件夹,并在文件下分别建立 app.js 和 app.css 文件,文件内容可为空。

然后git status查看创建情况。

 

 

暂存文件

在终端上运行以下命令,使用 git add 将 index.html 添加到暂存区:

$ git add index.html,然后运行git status查看运行结果。

 

 

 

 

提交 Commit

    要在 git 中提交 commit,你需要使用 git commit 命令,但是先别运行这条命令。因为我们首先需要将git与sublime编辑器连接。

在git中输入git config --global core.editor "'C:\Program Files\Sublime Text 3\sublime_text.exe' -n -w",然后再输入git commt。

编辑器会自动打开。

 

 

 

 

将标题从"Expedition"改为"Adventure"。保存文件,然后在终端上运行git diff。

 

 

git tag 命令

使用git tag命令与标签进行交互,输入git tag -a v1.0,然后在自动弹出的编辑器中输入ready for content作为标签。

运行git tag -d v1.0删除标签。

 

创建分支

要创建分支,只需使用 git branch 并提供要创建的分支对应的名称。我们可以运行git branch sidebar创建一个叫sidebar的分支。

虽然我们创建了 sidebar 分支,但是它还不是当前分支,目前提示符显示的是当前分支master。我们可以运行 git checkout sidebar切换到sidebar分支。

运行git branch --oneline显示所有分支,运行git branch显示当前活跃分支。

 

git branch -d sidebar可以删除我们创建的分支。但如果我们当前在该分支上,无法删除该分支。

运行git merge master我们会合并分支。

 

 

2)实验过程中发生的问题与解决

在连接git 和commit时出现错,如图

 

不知是格式还是代码错误,然后我直接克隆粘贴,结果能正常运行。所以连接时是正常的,安装路径正确的。

克隆时在网络不好时容易无法完整完成。第一次运行时没有注意,结果在git log时报错。

 

实验总结与体会:在做本次实验时,一定要细心。敲代码时要注意代码的正确性,一旦代码出现错误,就可能影响后面实验的进行。本次实验独立完成,虽然花费了一点时间,但收获颇丰。

在实验过程中,出现了问题,在老师和同学的帮助下,最终解决这些问题。

思考题:分布式版本控制系统就是git,分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

 

Git的功能特性:
从一般开发者的角度来看,git有以下功能:
1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
2、在自己的机器上根据不同的开发目的,创建分支,修改代码。
3、在单机上自己创建的分支上提交代码。
4、在单机上合并分支。
5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
6、生成补丁(patch),把补丁发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。

 

posted @ 2020-03-02 22:48  虞旭  阅读(300)  评论(0编辑  收藏  举报