书接上文,我们讲到如何进行版本日志回退,根据这个,我们可以返回到任意状态
今天让我们接着讲完git的基本指令操作教程以及其余分支
- 删除文件操作
==前提:==要被删除的文件已经存储在本地库中
这里我们可以创建一个文件(待会要对其进行删除操作)
-
vim test_delete.txt
创建待删除文件
-
将其存储到本地库
git add test_delete.txt
——git commit -m"ready to be deleted" test_delete.txt
此时查看本地库中的文件,可见有两个文件
-
执行删除指令
git rm test.delete.txt
——>查看删除后当前本地库中的文件ll
这里可见我们成功删除test_delete.txt文件! -
这时候有人想问那我万一误删怎么办,这时候我们可以利用版本回溯来处理
git reflog
查找到文件存储到本地库的哈希值——>版本回溯git reset --hard [哈希值]
- 文件对比
我们可以通过git指令来对比文件的差异
我们可以拿我们第一次创建的文本test.txt进行操作
git diff 文件名
git diff 哈希值 文件名 #和历史中的一个版本比较
git diff #不带文件名,则比较多个文件
我们这里进行test.txt不同版本的对比
git diff [第二次提交的哈希值] test.txt
其中白框标记的即是相同文本文件两个版本的内容变化!
以上便是git的基本操作用法,接下是git的分支管理部分
- 什么是分支
分支是为了将修改记录的整体流程分叉保存
- 分支的好处
同时并行推进多个功能开发,提高开发效率
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任
何影响。失败的分支删除重新开始即可
- 分支操作
- 查看分支
git branch -v
如图我们现在在没有其他分支和未更换分支的情况下默认为master主支上 - 创建分支
git branch [分支名]
test:
git branch test_branch
这里可见橘黄色框住的便是我们创建的测试分支
- 切换分支
git checkout [分支名]
git checkout test_branch
——>git branch -v
查看当前所处分支
可见此时我们已经切换到test_branch分支上
- 合并文件
切换到接受修改的分支(被合并,增加新内容)上执行 merge 命令
- 先切换到要进行修改文件的分支上,这里我们要在test_branch上进行文本编辑并最终将文件合并到master分支上!
- 编辑目标文件,这里我们对于test.txt进行编辑
vim test.txt
,增加insert by test_branch
新字段
- 切换到master上
- 情况一:master上的test.txt未被编辑,此时可以直接执行
git merge test_branch
即可进行内容的整合一起 - 情况二:master上的text.txt也在master上被编辑,此时如果进行merge操作系统会无法判断到底该覆盖哪个分支上的相同位置的内容
- 这时候要解决冲突
- 编辑文件,删除特殊符号
- 把文件修改到满意的程度,保存退出
- git
- git commit
- 这时候要解决冲突