Interview Q&A / Git & GitHub
Git & GitHub interview questions
Branching, merge vs rebase, resolving conflicts and pull requests, the way teams actually work.
Prefer rapid revision? Practise Git & GitHub short interview answers →
- How do you resolve a merge conflict in Git?
Run git status to see the conflicted files, open each one and find the markers <<<<<<<, ======= and >>>>>>>. Edit the code to the correct final version, delete the markers, then git add the file and run git commit (or git rebase --continue during a rebase). Test before you push.
BeginnerIn-depth3 min read - How do you cancel a merge that went wrong?
Run git merge --abort. It restores your branch and working tree to the state before the merge started. It works while the merge is still unresolved and uncommitted.
BeginnerQuick answer1 min read - What are the three ways to merge a pull request on GitHub?
Create a merge commit keeps all commits plus a merge commit. Squash and merge combines them into one commit. Rebase and merge replays the commits onto main without a merge commit, giving linear history.
BeginnerQuick answer1 min read - What do the <<<<<<<, ======= and >>>>>>> markers in a file mean?
They are Git's conflict markers. The part between <<<<<<< and ======= is your current branch's version, and the part between ======= and >>>>>>> is the incoming version. You edit the file to the final text and delete all three marker lines.
BeginnerQuick answer1 min read - What is a fast-forward merge, and when does Git use it?
A fast-forward merge happens when the target branch has no new commits of its own, so Git just moves its pointer forward to the other branch's tip. No merge commit is created and history stays a straight line.
BeginnerQuick answer1 min read - What is a merge commit, and how is it different from a normal commit?
A merge commit has two (or more) parents instead of one. It records the point where two lines of history were joined, and holds the combined result of both branches.
BeginnerQuick answer1 min read