What is git --amend?

The git --amend command can be used to modify the last commit. Once it has modified the last commit, it replaces it with a new commit.

How to use git --amend

git commit --amend -m "commit message"

We use the -m option with the commit message to pass a new message from the command line, similar to how we use git --commit.

Example

Let’s create a file and initialize it with git.

On your terminal, create a folder called dummy by using the mkdir command as shown below.

mkdir dummy

Change your directory to dummy folder by using cd command and then create a new file with the touch command as shown below.

cd dummy
touch dummy.txt

Initialize the dummy folder with the git command as shown below.

git init

Stage the dummy file with the git add command as shown below.

git add dummy.txt

Now make the first commit.

git commit -m "first commit"

To see the commit history, we type in the log command as shown below.

git log --oneline

The output of the git log --oneline command is shown below.

Add some dummy text to the dummy.txt file and commit the changes.

git add dummy.txt
git commit -m "add dummy text to dummy.txt file"

Check the commit history in the image below.

Now, let’s modify the last commit with git --amend.

 git commit --amend -m "ammend last commit"

Finally, let’s find out if this new commit has replaced the last commit by using the git log command.

With git --amend we were able to modify the last commit and replace it with the modified one.

New on Educative
Learn to Code
Learn any Language as a beginner
Develop a human edge in an AI powered world and learn to code with AI from our beginner friendly catalog
🏆 Leaderboard
Daily Coding Challenge
Solve a new coding challenge every day and climb the leaderboard

Free Resources