Have you ever made changes to a file, committed them, and then realized you need to revert just that one file back to an earlier version, leaving all your other work untouched? Git makes this surprisingly straightforward. This guide will walk you through the steps to undo changes to a specific file, like FooFile.php, without disrupting the rest of your branch.
1. Pinpoint the Correct Commit
Your first task is to locate the specific commit where the file was in its desired, previous state. To view the commit history for a particular file, use the following command:
git log -- FooFile.php
Review the output to find the commit hash of the version you want to restore.
2. Revert the File to its Past State
Once you have the commit hash, you can use the checkout command to revert the file to how it looked in that specific commit. Replace <commit-hash> with the actual hash you identified:
git checkout <commit-hash> -- FooFile.php
This command effectively stages the old version of FooFile.php into your working directory, overwriting the current changes.
3. Commit the Reversion
After reverting the file, Git sees this as a modification. You need to commit this change to your branch to make the reversion permanent:
git add FooFile.php
git commit -m "Reverted FooFile.php to an earlier version"
You can customize the commit message to be more descriptive if needed.
4. Push Your Changes
Finally, to apply these changes to your remote repository and share them with your team (if applicable), push your updated branch:
git push
By following these steps, you can confidently revert a single file in Git to a previous state, maintaining the integrity of your other committed changes.