返回

git查看单次提交修改信息的方式

前端

git查看单次提交修改信息的方式
git中的每个提交都包含对git版本库中某个时间点的历史快照。这些提交可以包含从最后一个提交以来对一个或多个文件的修改。

您可以使用多种方法来查看每次提交中包含的修改信息。让我们来看看每种方法的语法和输出的差异。

1. git show

git show <commit-ish>

例子:

git show 985f285

输出:

commit 985f285284f4d1b3be0993605c16897133933979
Author: John Doe <john.doe@example.com>
Date:   Wed Jun 17 15:35:32 2020 -0700

    Fixed a bug in the code that was causing the program to crash.

diff --git a/main.c b/main.c
index 9c819b9..6a79861 100644
--- a/main.c
+++ b/main.c
@@ -11,7 +11,7 @@ int main(void) {
     int x = 10;

-    if (x == 10) {
+    if (x == 15) {
         printf("x is equal to 10.\n");
     }

解释:

  • git show 命令显示给定提交的详细信息。
  • 在输出中,您可以看到提交的哈希值、作者、日期、提交消息和包含在提交中的文件更改。
  • 文件更改以补丁格式显示。补丁格式显示了对文件所做的添加、删除和修改。

2. git diff

git diff <commit-ish>

例子:

git diff 985f285

输出:

diff --git a/main.c b/main.c
index 9c819b9..6a79861 100644
--- a/main.c
+++ b/main.c
@@ -11,7 +11,7 @@ int main(void) {
     int x = 10;

-    if (x == 10) {
+    if (x == 15) {
         printf("x is equal to 10.\n");
     }

解释:

  • git diff 命令显示给定提交中包含的文件更改。
  • 在输出中,您可以看到包含在提交中的文件更改。
  • 文件更改以补丁格式显示。补丁格式显示了对文件所做的添加、删除和修改。

3. git log -p

git log -p <commit-ish>

例子:

git log -p 985f285

输出:

commit 985f285284f4d1b3be0993605c16897133933979
Author: John Doe <john.doe@example.com>
Date:   Wed Jun 17 15:35:32 2020 -0700

    Fixed a bug in the code that was causing the program to crash.

diff --git a/main.c b/main.c
index 9c819b9..6a79861 100644
--- a/main.c
+++ b/main.c
@@ -11,7 +11,7 @@ int main(void) {
     int x = 10;

-    if (x == 10) {
+    if (x == 15) {
         printf("x is equal to 10.\n");
     }

解释:

  • git log -p 命令显示给定提交的详细信息,包括提交消息和包含在提交中的文件更改。
  • 在输出中,您可以看到提交的哈希值、作者、日期、提交消息和包含在提交中的文件更改。
  • 文件更改以补丁格式显示。补丁格式显示了对文件所做的添加、删除和修改。

4. git stat

git stat <commit-ish>

例子:

git stat 985f285

输出:

main.c | 1 +
1 file changed, 1 insertion(+)

解释:

  • git stat 命令显示给定提交中包含的文件统计信息。
  • 在输出中,您可以看到更改的文件数量、添加的行数和删除的行数。

5. git name-status

git name-status <commit-ish>

例子:

git name-status 985f285

输出:

M main.c

解释:

  • git name-status 命令显示给定提交中包含的已修改文件。
  • 在输出中,您可以看到已修改文件的列表。

希望这篇文章能帮助您更好地了解如何查看git单次提交修改信息。