4 Rebase Line Ending Fix
Margen67 edited this page 2021-06-11 13:32:21 -10:00

Here are the instructions you should follow ensure there are no rebase conflict before rebase on top of Cxbx-Reloaded's default branch.

Thoroughly Check Inspection

  1. Pull latest commit from Cxbx-Reloaded's default branch into your default branch.
    • This is important in order to obtain valid commit hash.
  2. Perform git rebase at 967f53a commit in front of your branch's commits.
    • git rebase 967f53a your_branch_name
  3. Fix any rebase conflict you may encounter in order to continue with the next step. Then move on to step 4.
  4. Same step with #2 except different commit, which is 615b702. It is a requirement in order to normalize your commits line up with current default branch.
    • git rebase 615b702 your_branch_name -Xrenormalize
  5. Verify there are no changes staged through git status command. If there are, then see step 6 or otherwise go to step 7. Since there is side effect which git didn't perform properly.
  6. Find the source of the commit then manually renormalize those commit(s) via:
    • git add . --renormalize && git commit --amend --no-edit
  7. Finally, you can rebase your branch directly on top of latest default branch. If you encounter any rebase conflict, then you are responsible to fix it. Or simply recreate your commits in a new branch on top of latest default branch.

TL;DR

If you wish to skip all of above steps, you can try perform normal rebase with requirement of -Xrenormalize parameter. Either with git pull --rebase or git rebase commands.