mirror of
https://github.com/jbranchaud/til
synced 2026-01-04 23:58:01 +00:00
Add Transition A Branch From One Base To Another 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).
|
||||
|
||||
_1250 TILs and counting..._
|
||||
_1251 TILs and counting..._
|
||||
|
||||
---
|
||||
|
||||
@@ -317,6 +317,7 @@ _1250 TILs and counting..._
|
||||
- [Stashing Only Unstaged Changes](git/stashing-only-unstaged-changes.md)
|
||||
- [Stashing Untracked Files](git/stashing-untracked-files.md)
|
||||
- [Switch To A Recent Branch With FZF](git/switch-to-a-recent-branch-with-fzf.md)
|
||||
- [Transition A Branch From One Base To Another](git/transition-a-branch-from-one-base-to-another.md)
|
||||
- [Turn Off The Output Pager For One Command](git/turn-off-the-output-pager-for-one-command.md)
|
||||
- [Two Kinds Of Dotted Range Notation](git/two-kinds-of-dotted-range-notation.md)
|
||||
- [Unstage Changes Wih Git Restore](git/unstage-changes-with-git-restore.md)
|
||||
|
||||
23
git/transition-a-branch-from-one-base-to-another.md
Normal file
23
git/transition-a-branch-from-one-base-to-another.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# Transition A Branch From One Base To Another
|
||||
|
||||
Let's say I'm working in a git workflow where we have `main` as our production
|
||||
branch and `dev` as our development branch. I've opened a feature branch off of
|
||||
`main` and made a series of commits. It is at that point that I realize I
|
||||
should instead be branched off `dev`. I could open up a new branch off `dev`
|
||||
and then `cherry-pick` those commits. That is messier and more steps than
|
||||
necessary.
|
||||
|
||||
Instead, I can transition the feature branch I'm already working from to a
|
||||
different base.
|
||||
|
||||
The [`git-rebase`](https://git-scm.com/docs/git-rebase) command supports this
|
||||
with the `--onto` flag.
|
||||
|
||||
```bash
|
||||
$ git rebase --onto dev main my-feature-branch
|
||||
```
|
||||
|
||||
Specify the new base branch (`dev`), the current base (`main`), and then the
|
||||
name of the branch you are transitioning (`my-feature-branch`).
|
||||
|
||||
[source](https://stackoverflow.com/a/10853956/535590)
|
||||
Reference in New Issue
Block a user