mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
Add Restore File From One Branch To The Current as a Git TIL
This commit is contained in:
@@ -10,7 +10,7 @@ pairing with smart people at Hashrocket.
|
|||||||
|
|
||||||
For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186).
|
For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186).
|
||||||
|
|
||||||
_1645 TILs and counting..._
|
_1646 TILs and counting..._
|
||||||
|
|
||||||
See some of the other learning resources I work on:
|
See some of the other learning resources I work on:
|
||||||
- [Get Started with Vimium](https://egghead.io/courses/get-started-with-vimium~3t5f7)
|
- [Get Started with Vimium](https://egghead.io/courses/get-started-with-vimium~3t5f7)
|
||||||
@@ -385,6 +385,7 @@ If you've learned something here, support my efforts writing daily TILs by
|
|||||||
- [Renaming A Branch](git/renaming-a-branch.md)
|
- [Renaming A Branch](git/renaming-a-branch.md)
|
||||||
- [Resetting A Reset](git/resetting-a-reset.md)
|
- [Resetting A Reset](git/resetting-a-reset.md)
|
||||||
- [Resolve A Merge Conflict From Stash Pop](git/resolve-a-merge-conflict-from-stash-pop.md)
|
- [Resolve A Merge Conflict From Stash Pop](git/resolve-a-merge-conflict-from-stash-pop.md)
|
||||||
|
- [Restore File From One Branch To The Current](git/restore-file-from-one-branch-to-the-current.md)
|
||||||
- [Review Commits From Before A Certain Date](git/review-commits-from-before-a-certain-date.md)
|
- [Review Commits From Before A Certain Date](git/review-commits-from-before-a-certain-date.md)
|
||||||
- [Run A Git Command From Outside The Repo](git/run-a-git-command-from-outside-the-repo.md)
|
- [Run A Git Command From Outside The Repo](git/run-a-git-command-from-outside-the-repo.md)
|
||||||
- [Set A Custom Pager For A Specific Command](git/set-a-custom-pager-for-a-specific-command.md)
|
- [Set A Custom Pager For A Specific Command](git/set-a-custom-pager-for-a-specific-command.md)
|
||||||
|
|||||||
20
git/restore-file-from-one-branch-to-the-current.md
Normal file
20
git/restore-file-from-one-branch-to-the-current.md
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
# Restore File From One Branch To The Current
|
||||||
|
|
||||||
|
On one feature branch I have created some files and made changes to some
|
||||||
|
existing files as part of spiking a feature. Now I'm on a different branch
|
||||||
|
taking another shot at it. I want changes from one or two of the files. In the
|
||||||
|
past I've used `git-checkout` for this task. However, I believe this is one of
|
||||||
|
the use cases they had in mind when they added `git-restore`.
|
||||||
|
|
||||||
|
What I want to do is _restore_ the state of a file as it appears on some source
|
||||||
|
branch to my current branch. Here is what that looks like:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ git restore --source=some-feature-branch app/models/contact.rb
|
||||||
|
```
|
||||||
|
|
||||||
|
Now when I check `git status` I'll see the state of that file on the
|
||||||
|
`some-feature-branch` branch overlayed on my current working copy. If the file
|
||||||
|
doesn't exist, it will be created.
|
||||||
|
|
||||||
|
See `man git-restore` for more details.
|
||||||
Reference in New Issue
Block a user