git merge and git rebase?git merge creates a new 'merge commit' combining two branch histories while preserving exact chronological order and original commit hashes. git rebase rewrites history by moving the entire feature branch onto the tip of the target branch, creating new commit hashes and a strictly linear history.