One mistake I made is, when I found a bug while working on a task, I tend to fix it before continuing on the task. As a result, I often have two different changes in one file and end with one big messy commit.
If you make the same mistake, try command
git add -p to clean up the mess.
git add [-p, --patch]
Interactively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance to review the difference before adding modified contents to the index.
This effectively runs add –interactive, but bypasses the initial command menu and directly jumps to the patch subcommand. See Interactive Mode for more details.
After you run the command, git will presents the diff between the index and the working tree file and asks you if you want to stage the change of each hunk. You can select one of the following options and type return: