How to Get List of All Commits in Git?

Git a powerful version control system, keeps track of all changes made to a project by recording each change in a commit. Sometimes, you need to see the complete list of commits to understand the project’s history, track changes, or debug issues.

Listing all commits in a Git repository can be useful for:

  • Understanding Project History: Reviewing all changes made over time.
  • Tracking Progress: Seeing who made what changes and when.
  • Debugging: Identifying when a bug was introduced by looking at changes.
  • Documentation: Generating changelogs or release notes.

Here are several ways to list all commits in a Git repository which are as follows:

Table of Content

  • Basic Log Command
  • Compact Log with Oneline Option
  • Customized Log Output
  • Using Gitk for a GUI View

Basic Log Command

The `git log` command is the most straightforward way to list all commits.

   git log

This command will display the commits in reverse chronological order, showing the most recent commits first.

Compact Log with Oneline Option

For a more concise view, you can use the `–oneline` option with `git log`.

   git log --oneline

This will display each commit on a single line, showing the commit hash and commit message.

Customized Log Output

You can customize the output of `git log` using various options.

1. Author and Date

   git log --pretty=format:"%h - %an, %ar : %s"

This format shows the abbreviated commit hash, author name, relative date, and commit message.

2. Graphical Representation

   git log --oneline --graph --all

This command provides a visual representation of the commit history, useful for understanding branching and merging.

3. List Commits by a Specific Author

If you want to list commits by a particular author, use the `–author` option.

git log --author="Author Name"

Replace `”Author Name”` with the actual name of the author whose commits you want to list.

4. List Commits Within a Date Range

To list commits within a specific date range, use the `–since` and `–until` options.

git log --since="2023-01-01" --until="2023-12-31"

Adjust the dates as needed to fit your desired range.

5. List Commits with Specific Keywords

If you’re looking for commits with specific keywords in the commit message, use the `–grep` option.

git log --grep="keyword"

Replace `”keyword”` with the term you’re searching for in commit messages.

6. List Commits with File Changes

To see commits that involve changes to a specific file, use the file path at the end of the `git log` command.

   git log -- <file-path>

Replace `<file-path>` with the path to the file you’re interested in.

Using Gitk for a GUI View

For a graphical interface to view commits, you can use `gitk`, a graphical history viewer for Git.

gitk

This opens a GUI window displaying the commit history visually.


Contact Us