对比区别 - git diff

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

下面,我们可以去修改一下项目里的 index.html 这个文件... 直接用文本编辑软件打开它 ... 经如去改一下 html 标签上的 lang 属性,这个属性表示网页使用的语言,这里是 en ,我们把它改成简体中文,zh-hans ...

回到终端工具 ... 然后用 git status 去查看一下 ...

这回提示说 ... Changes not staged for commit ,这里有一些要提交的修改,不过还没有把它们放在暂存区里面。modified ,修改的文件是 index.html 。

查看不同

想查看一下这个文件修改前还有修改后的区别,可以使用 git diff 命令... 在它后面可以加上想要查看区别的具体的文件的名称 ... 不加的话,会显示所有修改文件的区别。

git diff index.html

这行命令会去对比 index.html 这个文件,在 repository 里面版本,跟在工作目录里面的版本之间的区别。这里显示的是,去掉了 html lang 等于 en 这行代码,减号,表示去掉了这行代码。然后添加了一行新的代码 .. html lang 等于 zh-hans 。

虽然这里我们只修改了这个 lang 属性的值,不过对于 git 来说,它是一行一行对比的。

git 会在这里给出修改前后的几行代码作为参照。

下面,我们把这个修改添加到暂存区 ...

git add index.html

查看一下状态 ... git status ... 显示一个要提交的修改 ... 然后再用 git diff 去查看一下区别 ...

git diff

这回没有显示了 ... 因为我们已经把修改添加到了暂存区,所以,再次比较的时候,会用暂存区里面的东西跟工作目录里面的东西进行比较。

下面我们再去修改一下 index.html ... 这里给这个文档添加一个 viewport 的 meta 标签,这行标签可以让文档针对移动设计进行优化,你可以参数宁皓网的 《响应式网页设计》这个课程。

meta:vp

回到终端,先查看一下状态 ... git status ... 你会发现,暂存区里已经有了一个修改,是来自 index.html 这个文件 ... 另外,还显示,有些修改没有放到暂存区,这个修改同样是来自 index.html 这个文件。

这是因为,第一次修改了 lang 属性的值,这个修改已经放到了暂存区准备提交,随后,我们又给 index.html 添加了一个新的 meta 标签,这个修改还没有放到暂存区里。

再去对比一下跟工作目录里的区别 ...

git diff

这里对比的结果是,暂存区里的东西跟工作目录的对比。如果你想比较的是 repository 跟暂存区的东西,可以使用一个 staged 选项。

git diff --staged

在 repository 跟暂存区里面,index.html 的区别是,lang 这个属性的值 ... 我们先提交一下这个修改 ...

git commit -m '修改了 index.html 的 lang 属性值为 zh-hans'

git status ... 显示还有一处修改没有提交 ...

git add 添加一下这个修改 ... git add index.html

然后再提交一下 ...

git commit -m '为 index.html 添加了 viewport meta 标签'

再去查看一下提交的日志 ...

git log

这里会显示出我们做的这三个提交的信息。

对比区别 - git diff《 Git:版本控制 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点