Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
Post History
A simple and flexible approach is to use interactive rebasing (rebase -i) which allows you to pick / drop / squash individual commits. In this case you would want to duplicate the branch (just chec...
#2: Post edited
- A simple and flexible approach is to use interactive rebasing (`rebase -i`) which allows you to pick / drop / squash individual commits. In this case you would want to duplicate the branch (just check out a new branch on `HEAD`) and perform the interactive rebase.
- ```
- # on branch both-features
git checkout -b feature1- git rebase -i HEAD~6 # consider last 6 commits, alternatively put the commit id of the commit BEFORE the first you want to consider
- # select the relevant commits for feature1, complete the rebase
git checkout - # back to last branchgit checkout -b feature2- git rebase -i HEAD~6
- # select the relevant commits for feature2, complete the rebase
- git branch -D both-features # optional: delete original branch
- ```
- A simple and flexible approach is to use interactive rebasing (`rebase -i`) which allows you to pick / drop / squash individual commits. In this case you would want to duplicate the branch (just check out a new branch on `HEAD`) and perform the interactive rebase.
- ```
- # on branch both-features
- git switch -c feature1
- git rebase -i HEAD~6 # consider last 6 commits, alternatively put the commit id of the commit BEFORE the first you want to consider
- # select the relevant commits for feature1, complete the rebase
- git switch - # back to last branch
- git switch -c feature2
- git rebase -i HEAD~6
- # select the relevant commits for feature2, complete the rebase
- git branch -D both-features # optional: delete original branch
- ```
#1: Initial revision
A simple and flexible approach is to use interactive rebasing (`rebase -i`) which allows you to pick / drop / squash individual commits. In this case you would want to duplicate the branch (just check out a new branch on `HEAD`) and perform the interactive rebase. ``` # on branch both-features git checkout -b feature1 git rebase -i HEAD~6 # consider last 6 commits, alternatively put the commit id of the commit BEFORE the first you want to consider # select the relevant commits for feature1, complete the rebase git checkout - # back to last branch git checkout -b feature2 git rebase -i HEAD~6 # select the relevant commits for feature2, complete the rebase git branch -D both-features # optional: delete original branch ```
