You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
bjorng edited this page Sep 13, 2010
·
5 revisions
Here are some pointers how you can use git to create a clean set of commits for possible inclusion in Erlang/OTP.
Amending to previous git commit
If you forgot to add a file to the previous commit, or similar mistakes, or want to edit the commit message, then git commit --amend can help you.
Amend will not create a new commit on top of HEAD, but instead open the last commit, change it and replace it with the new amended commit. This means that you should never amend to a published commit.
Select chunks to add to index
Interactively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance to review the difference before adding modified contents to the index.
This effectively runs git add --interactive, but bypasses the initial command menu and directly jumps to the patch subcommand. See “Interactive mode” for details.
Interactive mode in git rebase
Interactive rebase allow you to clean up your commit history by:
By default, git push will refuse to push a branch that have been amended or rebased, because in general rewriting history will cause problems for anyone that has fetched the original version of the branch and you will lose the previous history of the branch.
When refining patches, however, rewriting history is fine. No one is supposed to base any work on a topic branch before it has been merged to the development branch. To force git push to push anyway, use the -f option: