Please select random order or first card below to begin studying 🤓
Congratulations! You have finished studying this set of cards
What Git operation unifies two or more branches?
A merge
Does Git support merging more than two branches at the same time?
Yes
When a Git merge happens, what branch gets the merge commit?
The current branch
What should you always make sure before you do a merge with Git?
Make sure your working directory and index are clean
What option can you pass to git log to see a nice visual that is an alternative to graphical tools such as gitk?
git log --graph
What Git command can find the merge base between branches?
git merge-base
What are the two degenerate merge scenarios that do not introduce a new merge commit?
Already up-to-date and fast-forward
What is the degenerate Git merge scenario where all the commits from the other branch are already present in the target branch?
Already up-to-date
What is the degenerate Git merge scenario where your branch is already fully present in the other branch and so the new commits are tacked on to the current branch?
Fast-forward
What are the three normal merge strategies that produce a merge commit added to the currently checked out branch?
Resolve, recursive, and octopus
What is the normal merge strategy that locates the merge base and applies changes from the merge base to the top of the other branch HEAD onto the current branch?
Resolve
What is the normal merge strategy that merges two branches but can work when there is more than one possible merge base?
Recursive
What is the normal merge strategy that temporarily merges the possible merge bases to use as the merge base to derive the resulting merge?
Recursive
What is the normal merge strategy that internally uses the recursive strategy but can merge more than two branches at once?
Octopus
When can the octopus Git merge strategy not work?
If conflict resolution is needed
What are the two special merge strategies discussed in the Version Control with Git book?
ours and subtree
Does a merge commit represent any branch more than any other branch when they are merged together?
No
What is a reason why it is probably preferable to do a merge rather than create a linear history (rebase) according to the Version Control with Git book?
The rebase introduces intermediate states that were never really looked at