David Y.
—How can I revert one file to its state in a previous commit without changing anything else in my Git repository?
First, we’ll need the commit hash of the commit we want to restore our file from. The commit hash is the long alphanumeric string you may have seen associated with each of your commits – each one is unique and functions as an identifier for the repository state at that time. It looks something like this:
070cc94d35c1c45fb40c13344583e16f77e76c0b
While a full commit hash is 40 characters long, Git will allow us to use the first seven characters to refer to it. So the above hash can be shortened to 070cc94
.
We can look at previous commits by running git log
and temporarily revert our repository’s state to them by running git checkout <hash>
, using either all 40 characters of the hash or the first seven. When we’re done looking at the repository in this past state, we can return to a current state by checking out an active branch – e.g. git checkout main
.
If we have the names of the files to restore and the commit hash to restore them to, we can restore them with a git checkout
command:
git checkout 070cc94 -- file-to-restore.txt another/file-to-restore.py
The use of --
in this command tells Git that rather than checking out the entire repository at this commit (as we would with git checkout 070cc94
on its own) we only want to check out a subset of files.
Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.
SEE EPISODESConsidered “not bad” by 4 million developers and more than 100,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.
Here’s a quick look at how Sentry handles your personal information (PII).
×We collect PII about people browsing our website, users of the Sentry service, prospective customers, and people who otherwise interact with us.
What if my PII is included in data sent to Sentry by a Sentry customer (e.g., someone using Sentry to monitor their app)? In this case you have to contact the Sentry customer (e.g., the maker of the app). We do not control the data that is sent to us through the Sentry service for the purposes of application monitoring.
Am I included?We may disclose your PII to the following type of recipients:
You may have the following rights related to your PII:
If you have any questions or concerns about your privacy at Sentry, please email us at compliance@sentry.io.
If you are a California resident, see our Supplemental notice.