Git History provides essential version control capabilities for managing codebase changes cleanly, predictably, and efficiently.
Git keeps a detailed record of every change made to your project.
You can use history commands to see what changed, when, and who made the change.
This is useful for tracking progress, finding bugs, and understanding your project's evolution.
git log - Show full commit historygit log --oneline - Show a summary of commitsgit show <commit> - Show details of a specific commitgit diff - See unstaged changesgit diff --staged - See staged changesgit log --oneline for a quick overview of your commit history.git diff before committing to review your work.git log)Show a detailed list of all commits in your repository:
Example: Full Commit History
git log
commit 09f4acd3f8836b7f6fc44ad9e012f82faf861803 (HEAD -> master)
Author: kodersolution-test
Date: Fri Mar 26 09:35:54 2021 +0100
Updated index.html with a new line
This command shows all commits, including author, date, and message.
Use the arrow keys to scroll, and press q to quit.
Tip: While viewing the log, you can search for a word by typing / followed by your search term
(for example, /fix), then press n to jump to the next match.
Press q at any time to quit.
git show <commit>)See all the details and changes for a specific commit:
Example: Show Commit Details
git show 09f4acd
commit 09f4acd3f8836b7f6fc44ad9e012f82faf861803 (HEAD -> master)
Author: kodersolution-test
Date: Fri Mar 26 09:35:54 2021 +0100
Updated index.html with a new line
diff --git a/index.html b/index.html
index 1234567..89abcde 100644
--- a/index.html
+++ b/index.html
@@ ...
+New Title
This command shows everything about a commit: who made it, when, the message, and the exact changes.
git diff)See what is different between your working directory and the last commit (unstaged changes):
Example: See Unstaged Changes
git diff
diff --git a/index.html b/index.html
index 1234567..89abcde 100644
--- a/index.html
+++ b/index.html
@@ ...
-Old Title
+New Title
This command shows changes you have made but not yet staged for commit.
git diff --staged)See what is different between your staged files and the last commit:
Example: See Staged Changes
git diff --staged
diff --git a/index.html b/index.html
index 1234567..89abcde 100644
--- a/index.html
+++ b/index.html
@@ ...
-Old Title
+New Title
This command shows changes that are staged and ready to be committed.
git diff <commit1> <commit2>)See what changed between any two commits:
Example: Compare Two Commits
git diff 1234567 89abcde
diff --git a/index.html b/index.html
index 1234567..89abcde 100644
--- a/index.html
+++ b/index.html
@@ ...
-Old Title
+New Title
This command shows the differences between two specific commits.
git log --oneline)Show a short summary of each commit (great for a quick overview):
Example: Oneline Log
git log --oneline
09f4acd Updated index.html with a new line
8e7b2c1 Add about page
1a2b3c4 Initial commit
This command shows each commit on a single line for easy reading.
git log --author="Alice")See only the commits made by a specific author:
Example: Commits by Author
git log --author="Alice"
commit 1a2b3c4d5e6f7g8h9i0j
Author: Alice
Date: Mon Mar 22 10:12:34 2021 +0100
Add about page
This command filters the log to show only commits by the author you specify.
git log --since="2 weeks ago")See only commits made in the last two weeks:
Example: Recent Commits
git log --since="2 weeks ago"
commit 09f4acd3f8836b7f6fc44ad9e012f82faf861803
Author: kodersolution-test
Date: Fri Mar 26 09:35:54 2021 +0100
Updated index.html with a new line
This command shows only the commits made in a recent time frame.
git log --stat)See which files were changed in each commit and how many lines were added or removed:
Example: Log with Stats
git log --stat
commit 09f4acd3f8836b7f6fc44ad9e012f82faf861803
Author: kodersolution-test
Date: Fri Mar 26 09:35:54 2021 +0100
Updated index.html with a new line
index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
This command adds a summary of file changes to each commit in the log.
git log --graph)See a simple ASCII graph of your branch history (great for visualizing merges):
Example: Log with Graph
git log --graph --oneline
* 09f4acd Updated index.html with a new line
* 8e7b2c1 Add about page
|\
| * aabbccd Merge branch 'feature-x'
|/
This command shows a simple graph of your branch and merge history.
git log --oneline or git log --since to make it easier to read.q to exit the log or diff view.Note: Exploring your history helps you understand what changed, when, and why.
Execute the following terminal commands to work with this concept in your workspace:
# Check repository status
git status
# View formatted log
git log --oneline -n 5
Fix CORS bug rather than Fixed CORS bug).git diff to review unstaged modifications before adding files to the index.git switch -c <branch-name> to preserve edits.git restore --staged <filename> to remove the file from the index without altering your local workspace copy.Open your terminal in a test project directory, execute git status, and verify your current working tree state. Practice running git log --oneline to review commit history.
Sign in to track your learning journey, earn industry-recognized certificates, and join our elite developer community.
Quick Access With