github之diff命令
来源:互联网 发布:进入淘宝 编辑:程序博客网 时间:2024/06/05 20:05
1.前言
观察上一章写的时候,居然发现少写了一个命令,那就是git commit -m "描述"
,只有这个命令,暂存区里的文件才能真的被提交到版本库里。具体的整体,我会再最后面讲述。
2. diff
diff命令用于比较各个文件之间的差异的命令。但是diff命令有好几种:
git diffgit diff HEADgit diff --staged
他们之间都有什么区别呢。首先我们要明确一点是,github的工作体系,就简单的体系来讲(不包括分支等,那个以后我们再完善。),主要分为工作区,暂存区和版本库3个部分。
具体的情况如下;
当暂存区无文件时,
git diff
比较的是工作区与版本库之间的区别,此时和`git diff HEAD
一致。当暂存区有文件时,
git diff
比较的是工作区与暂存区之间的区别。
而git --staged
比较的是暂存区与版本库之间的区别。
当然,默认情况下,是给出所有不同文件的,但bash是分文件给的,当有多个文件不同的时候,它会先显示一个不同的文件内容,然后光标前有一个:,如果你按d键,那么它会显示下一个不同的文件,如果你按ENTER键,它会逐行显示下一行。
事实上,它默认的工作方式是按行给出不同,你还可以使用:
git diff --color-wordsgit diff --word-diffgit diff --stat
等来改变显示不同的方式。
这样说来,就明白了许多吧。
3. 提交与撤销
工作区提交到暂存区的命令为git add 文件名
,暂存区提交到版本库的命令为git commit -m "描述"
。
相应的撤销是:
当工作区文件修改还没有提交到暂存区时,
git check --文件名
回退到的是和当前版本库里的版本一致的。当工作区文件修改已经提交到暂存区时,
git check --文件名
回退到的是和暂存区里的版本一致的。
而git reset HEAD 文件名
则可以把暂存区里的文件重新放回工作区中。
而如果你想对版本库进行版本回退与前进(如果你已经会退到了未来),那么你可能需要以下几个命令:
git log //查询每次提交的IDgit relog //查询所有历史和未来的提交ID,以便于能回到未来。git reset --hard HEAD^ //回退到上一版本git reset --hard HEAD^^ //回退到上上一版本git reset --hard 版本ID //回退到指定版本
4. 小结
本文中,我们对于github的追踪不同的修改进行了一定的讲解。这里再次感谢《github官方教程》以及《廖雪峰的git教程》和《阮一峰的git教程》。
- github之diff命令
- linux命令之diff
- Linux命令之diff
- linux命令之diff
- Git之diff命令
- 图解Linux命令之--diff命令
- GitHub使用中diff、log主要的命令
- Git学习之 -- git diff 命令魔法
- 每日linux命令学习之diff
- diff命令
- diff 命令
- diff 命令
- diff命令
- diff命令
- diff命令
- diff命令
- diff命令
- diff 命令
- 二分查找
- 运行web项目常见错误
- mac外网映射
- POJ1284 Primitive Roots
- ctf做题总结
- github之diff命令
- 有关JSON的操作
- AI:PR的数学表示-传统方法PR
- Hdu 5965 扫雷【思维+Dp】
- Shiro身份认证
- 2015湖南省赛 CSU 1783 :聊天止于呵呵(模拟)
- Intent大全
- 网络流系列
- 学习Java有没有什么捷径