下面,我们可以去修改一下项目里的 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
这里会显示出我们做的这三个提交的信息。