📜  显示用户所做的更改 git bash - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:55:12.487000             🧑  作者: Mango

显示用户所做的更改 git bash

在进行代码开发时,我们常常需要了解当前代码库中的更改情况,以及查看某次提交的具体内容,以便我们进行代码调试和修改等工作。而Git Bash是一个十分强大的命令行工具,为我们提供了丰富的操作命令。

git log

我们可以使用git log命令来查看代码库的提交日志,包括提交者、提交时间、提交信息等等。

$ git log

默认情况下,git log显示的是最新的提交信息,其中包括SHA-1哈希值、作者、日期、提交信息。我们也可以通过加入参数来控制输出的信息,比如:

$ git log --pretty=oneline  # 只显示SHA-1哈希值和提交信息
$ git log --graph          # 显示提交图谱
$ git log --since="2 weeks ago" # 显示最近2周以来的提交记录

这些输出控制的参数能够大大方便我们的开发和调试工作。

git diff

当我们需要了解某次提交具体更改时,我们可以使用git diff命令来查看对应的修改内容。

$ git diff [commit-hash]

其中commit-hash是某次提交的哈希值,可以在git log输出中找到。git diff命令的输出包含修改的文件名、被修改的内容以及修改后的内容,具体格式如下:

diff --git a/file.txt b/file.txt
index c4d0f03..990d4ef 100644
--- a/file.txt
+++ b/file.txt
@@ -1,3 +1,4 @@
 This is the original content of file.txt.
+Added new line.
 Let's modify this file by adding a new line.
 It's time to commit these changes.

输出结果中,@@ -1,3 +1,4 @@表示修改的位置信息,-1,3表示在原文件中从第1行开始,连续3行代码进行修改,+1,4表示在修改之后的文件中从第1行开始,连续4行代码是修改后的内容。这种输出格式虽然有些抽象,但对于理解代码变更情况非常有用。

git show

git show命令是一个方便的工具,其能够一次性输出某个提交的所有修改。

$ git show [commit-hash]

git diff命令不同的是,git show命令的输出格式更清晰,能够包含提交信息、修改内容、作者以及时间等等。

commit ad91ae8da63183a8162a106bc54fdb1fe0007d8b (HEAD -> master)
Author: John Doe <john@example.com>
Date:   Fri Jun 25 15:57:38 2020 +0800

    Added new line.

diff --git a/file.txt b/file.txt
index c4d0f03..990d4ef 100644
--- a/file.txt
+++ b/file.txt
@@ -1,3 +1,4 @@
 This is the original content of file.txt.
+Added new line.
 Let's modify this file by adding a new line.
 It's time to commit these changes.
总结

Git Bash提供了许多方便的命令来帮助我们了解代码变更情况,包括git loggit diff以及git show等。程序员们可以结合这些命令,方便地进行代码开发和调试工作。