当前版本与上一个版本之间的差异

问题描述 投票:665回答:11

使用Git,如何找到当前版本与最新版本之间的差异?

git diff last version:HEAD
git
11个回答
1159
投票

我不太了解“最新版本”的含义。

由于可以使用HEAD ^访问先前的提交,所以我认为您正在寻找类似的东西:

git diff HEAD^ HEAD

从Git 1.8.5开始,@HEAD的别名,因此您可以使用:

git diff @~..@

以下内容也将起作用:

git show

如果您想知道head和任何提交之间的区别,可以使用:

git diff commit_id HEAD

这将启动您的视觉差异工具(如果已配置):

git difftool HEAD^ HEAD

由于默认为与HEAD进行比较,因此您可以省略它(如Orient指出:]

git diff @^
git diff HEAD^
git diff commit_id

警告

  • @@ ScottF和@Panzercrisis在注释中解释说,在Windows上必须使用~字符代替^

2
投票

这也适用于标签。(如果需要查看所有更改,请删除下面的“ uniq”和其他部分)


2
投票

我在安装了Eclipse Bitbucket插件的Eclipse IDE中使用EGit。>

我比较文件历史记录的任何版本(例如SVN)。


154
投票

假设“当前版本”是工作目录(未提交的修改),“最新版本”是HEAD(当前分支的最近提交的修改),只需执行]]

git diff HEAD

以下内容的信用归用户Cerran

如果提交时总是用-a跳过暂存区域,则可以简单地使用git diff

摘要

  1. [git diff显示未进行的更改。
  2. [git diff --cached显示分阶段的更改。
  3. [git diff HEAD显示所有更改(已分阶段和未分阶段)。
  4. 来源:git-diff(1)手册页– Cerran


117
投票

正如commentamalloy上指出的,如果用“当前和最新版本”表示最后一次提交和在此之前的提交,则可以简单地使用]]

git show

60
投票

最后一次提交与最后一次提交之间的差异(加上当前状态,如果有的话:


52
投票

您也可以这样操作:


16
投票

如果已添加但尚未提交,请仅使用cached标志:


7
投票

快速而简单,假设您在母版中:


4
投票

首先,使用“ git log”列出存储库的日志。


3
投票

如果顶部提交由HEAD指向,那么您可以执行以下操作:

© www.soinside.com 2019 - 2024. All rights reserved.