当前位置: 首页 > news >正文

git add . 增加所有文件到缓存区 git diff 什么也没有 因为无法比较差异 如果git add 某一个文件 则可以查看变动文件

 git add src/pages/login/login-account.js

git diff --cached 或者 git diff --staged(git 高版本)

 

 

实际上 git status 的显示比较简单,仅仅是列出了修改过的文件,如果要查看具体修改了什么地方,可以用 git diff 命令。稍后我们会详细介绍 git diff,不过现在,它已经能回答我们的两个问题了:当前做的哪些更新还没有暂存?有哪些更新已经暂存起来准备好了下次提交? git diff 会使用文件补丁的格式显示具体添加和删除的行。

假如再次修改 README 文件后暂存,然后编辑 benchmarks.rb 文件后先别暂存,运行 status 命令将会看到:

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
 
        new file:   README
 
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
 
        modified:   benchmarks.rb
要查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff:

$ git diff
diff --git a/benchmarks.rb b/benchmarks.rb
index 3cb747f..da65585 100644
--- a/benchmarks.rb
+++ b/benchmarks.rb
@@ -36,6 +36,10 @@ def main
           @commit.parents[0].parents[0].parents[0]
         end
 
+        run_code(x, 'commits 1') do
+          git.commits.size
+        end
+
         run_code(x, 'commits 2') do
           log = git.commits('master', 15)
           log.size
此命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容。

若要看已经暂存起来的文件和上次提交时的快照之间的差异,可以用 git diff --cached 命令。(Git 1.6.1 及更高版本还允许使用 git diff --staged,效果是相同的,但更好记些。)来看看实际的效果:

$ git diff --cached
diff --git a/README b/README
new file mode 100644
index 0000000..03902a1
--- /dev/null
+++ b/README2
@@ -0,0 +1,5 @@
+grit
+ by Tom Preston-Werner, Chris Wanstrath
+ http://github.com/mojombo/grit
+
+Grit is a Ruby library for extracting information from a Git repository
请注意,单单 git diff 不过是显示还没有暂存起来的改动,而不是这次工作和上次提交之间的差异。所以有时候你一下子暂存了所有更新过的文件后,运行 git diff 后却什么也没有,就是这个原因。

像之前说的,暂存 benchmarks.rb 后再编辑,运行 git status 会看到暂存前后的两个版本:

$ git add benchmarks.rb
$ echo '# test line' >> benchmarks.rb
$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
 
        modified:   benchmarks.rb
 
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
 
        modified:   benchmarks.rb
现在运行 git diff 看暂存前后的变化:

$ git diff
diff --git a/benchmarks.rb b/benchmarks.rb
index e445e28..86b2f7c 100644
--- a/benchmarks.rb
+++ b/benchmarks.rb
@@ -127,3 +127,4 @@ end
 main()
 
 ##pp Grit::GitRuby.cache_client.stats
+# test line
然后用 git diff --cached 查看已经暂存起来的变化:

$ git diff --cached
diff --git a/benchmarks.rb b/benchmarks.rb
index 3cb747f..e445e28 100644
--- a/benchmarks.rb
+++ b/benchmarks.rb
@@ -36,6 +36,10 @@ def main
          @commit.parents[0].parents[0].parents[0]
        end
 
+        run_code(x, 'commits 1') do
+          git.commits.size
+        end
+
        run_code(x, 'commits 2') do
          log = git.commits('master', 15)
          log.size

--------------------- 
作者:leedaning 
来源:CSDN 
原文:https://blog.csdn.net/leedaning/article/details/44976105 
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章:

  • 英语标准答案
  • react hooks 之 useState
  • react hooks useEffect
  • 去掉 deplate(Viki) 生成的 html 文件行尾多余的空格。
  • react hooks useContext
  • 使用Flash Lite 制作手机主题
  • react hooks 规则以及自定义hooks的实现
  • react hooks reducer
  • react hooks 额外的钩子函数
  • 《程序员》杂志06年2月文章:Flash Lite挑战J2ME
  • CSDN Blog升级公告
  • koa文件上传2
  • 怎样成为一个Flash Lite Developer (开发篇)
  • Chat room help file
  • 小程序 - 使用async出现regeneratorRuntime is not defined错误 不能使用async 和await 的解决方案
  • 【笔记】你不知道的JS读书笔记——Promise
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • 30天自制操作系统-2
  • Electron入门介绍
  • MobX
  • Mybatis初体验
  • MYSQL 的 IF 函数
  • mysql_config not found
  • php面试题 汇集2
  • scala基础语法(二)
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 基于web的全景—— Pannellum小试
  • 利用DataURL技术在网页上显示图片
  • 聊聊flink的BlobWriter
  • 事件委托的小应用
  • 数组的操作
  • 我这样减少了26.5M Java内存!
  • 学习笔记TF060:图像语音结合,看图说话
  • 一个SAP顾问在美国的这些年
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • #Linux(make工具和makefile文件以及makefile语法)
  • ${ }的特别功能
  • (C语言)逆序输出字符串
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (七)理解angular中的module和injector,即依赖注入
  • (生成器)yield与(迭代器)generator
  • (算法)求1到1亿间的质数或素数
  • .NET BackgroundWorker
  • .Net Redis的秒杀Dome和异步执行
  • .NET 事件模型教程(二)
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .NET委托:一个关于C#的睡前故事
  • .NET中使用Redis (二)
  • @31省区市高考时间表来了,祝考试成功