Squash Commits Before PR
When you contribute to an open source project, your pull request (PR) should present a clear, focused set of changes. If your branch contains a long series of small or experimental commits, it can clutter the project's history and make code review harder. Many open source projects ask you to squash your commits before submitting a PR. Squashing means combining several related commits into a single, meaningful commit. This practice keeps the commit history tidy and helps maintainers understand the purpose of your contribution at a glance.
12345678910111213141516171819202122# Interactive rebase lets you squash commits in your branch. # Suppose your branch has three commits you want to combine into one before opening a PR. # Step 1: Start an interactive rebase for the last three commits git rebase -i HEAD~3 # Step 2: In the editor that opens, you'll see a list like: # pick a1b2c3d Update README # pick d4e5f6a Fix typo # pick f7g8h9i Add test # Change all but the first 'pick' to 'squash' (or 's'): # pick a1b2c3d Update README # squash d4e5f6a Fix typo # squash f7g8h9i Add test # Step 3: Save and close the editor. # Git will combine the commits and prompt you to write a new commit message. # Step 4: Edit the commit message to summarize your changes, then save and close. # Your branch now has a single, squashed commit instead of three.
After squashing your commits, your local branch history has changed. If you already pushed your branch to GitHub, you must force push to update the pull request with the new, squashed commit. Use the --force-with-lease option to safely overwrite the remote branch with your local branch:
12# Force push your squashed branch to update your pull request git push --force-with-lease origin your-branch-name
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Mahtavaa!
Completion arvosana parantunut arvoon 8.33
Squash Commits Before PR
Pyyhkäise näyttääksesi valikon
When you contribute to an open source project, your pull request (PR) should present a clear, focused set of changes. If your branch contains a long series of small or experimental commits, it can clutter the project's history and make code review harder. Many open source projects ask you to squash your commits before submitting a PR. Squashing means combining several related commits into a single, meaningful commit. This practice keeps the commit history tidy and helps maintainers understand the purpose of your contribution at a glance.
12345678910111213141516171819202122# Interactive rebase lets you squash commits in your branch. # Suppose your branch has three commits you want to combine into one before opening a PR. # Step 1: Start an interactive rebase for the last three commits git rebase -i HEAD~3 # Step 2: In the editor that opens, you'll see a list like: # pick a1b2c3d Update README # pick d4e5f6a Fix typo # pick f7g8h9i Add test # Change all but the first 'pick' to 'squash' (or 's'): # pick a1b2c3d Update README # squash d4e5f6a Fix typo # squash f7g8h9i Add test # Step 3: Save and close the editor. # Git will combine the commits and prompt you to write a new commit message. # Step 4: Edit the commit message to summarize your changes, then save and close. # Your branch now has a single, squashed commit instead of three.
After squashing your commits, your local branch history has changed. If you already pushed your branch to GitHub, you must force push to update the pull request with the new, squashed commit. Use the --force-with-lease option to safely overwrite the remote branch with your local branch:
12# Force push your squashed branch to update your pull request git push --force-with-lease origin your-branch-name
Kiitos palautteestasi!