Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,11 @@ For more information about Git commands to compare changes, see [Git diff option

## About three-dot comparison on {% data variables.product.prodname_dotcom %}

Since the three-dot comparison compares with the merge base, it is focusing on "what a pull request introduces."
Since the three-dot comparison compares with the merge base, it is focusing on the differences between the latest common commit of the topic branch and the base branch.

When you use a two-dot comparison, the diff changes when the base branch is updated, even if you haven't made any changes to the topic branch. Additionally, a two-dot comparison focuses on the base branch. This means that anything you add is displayed as missing from the base branch, as if it was a deletion, and vice versa. As a result, the changes the topic branch introduces become ambiguous.
Note, that with three-dot comparison, the diff changes when the base branch is updated, even if you haven't made any changes to the topic branch, because the diff shows all of the changes since the branches diverged. Additionally, a three-dot comparison focuses on the base branch. This means that anything you add is displayed as missing from the base branch, as if it was a deletion, and vice versa. As a result, the changes the topic branch introduces become ambiguous.
Comment on lines +76 to +78
Copy link

Copilot AI Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This description is technically incorrect. Three-dot comparison shows changes since the merge base (common ancestor), not all changes since branches diverged. It focuses on what the topic branch introduces, not the base branch. The statement about displaying additions as missing from base branch is also incorrect for three-dot comparison.

Copilot uses AI. Check for mistakes.

In contrast, by comparing the branches using the three-dot comparison, changes in the topic branch are always in the diff if the base branch is updated, because the diff shows all of the changes since the branches diverged.
In contrast, by comparing the branches using the two-dot comparison, only the changes in the topic branch would show in the diff if the base branch is updated, because the diff will only show the actual changes between the branches.
Copy link

Copilot AI Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This description of two-dot comparison is incorrect. Two-dot comparison shows all differences between the two branch tips, including changes from base branch updates. It's the three-dot comparison that isolates topic branch changes by comparing against the merge base.

Suggested change
In contrast, by comparing the branches using the two-dot comparison, only the changes in the topic branch would show in the diff if the base branch is updated, because the diff will only show the actual changes between the branches.
In contrast, a two-dot comparison shows all differences between the tips of the two branches, including changes from base branch updates. If the base branch is updated, those changes will also appear in the diff, not just the changes made in the topic branch. It's the three-dot comparison that isolates changes made in the topic branch since the branches diverged.

Copilot uses AI. Check for mistakes.

### Merging often

Expand Down
Loading