GitLab

Using GitSniper with GitLab merge requests.

GitSniper provides full support for GitLab, including gitlab.com and self-hosted instances.

Supported Features

All GitSniper features work with GitLab:

Feature Support
Comment extraction Full
Diff context Full
Threading Full
Custom preambles Full
Author filtering Full
Clipboard history Full
Expand references Full

Where to Find the Button

On a GitLab merge request, the GitSniper button appears near the MR title and actions area, typically alongside the "Code" and "Approve" buttons.

Comment Types Captured

GitSniper extracts these GitLab comment types:

Diff Comments

Comments on specific lines in the diff, including:

  • Single-line comments
  • Multi-line comments (spanning several lines)
  • Comments on added, removed, and unchanged lines

Discussion Threads

Threaded conversations on the MR, including:

  • Initial comments
  • All replies in the thread
  • Resolution status

General Notes

Comments not attached to specific code:

  • Overall review feedback
  • Questions and discussions
  • MR description updates

GitLab-Specific Formatting

Merge Request Approval

When a comment is part of an approval action:

REVIEW (@tech-lead) - APPROVED:
Looks good overall. Minor suggestions below.

Code Suggestions

GitLab's code suggestion feature is captured:

COMMENT (@reviewer):
Simplify this null check:

SUGGESTED CHANGE:
-  if (value !== null && value !== undefined) {
+  if (value != null) {

System Notes

GitLab system notes (like "resolved all threads") are filtered out by default to keep focus on actual review feedback.

Self-Hosted GitLab

GitSniper works with self-hosted GitLab instances automatically. The extension detects GitLab's interface patterns regardless of your custom domain.

Customised Themes

If your GitLab instance uses a heavily customised theme:

  • Basic extraction should still work
  • Some UI elements might not be detected
  • Report issues with details about your setup

Version Compatibility

GitSniper targets recent GitLab versions (14.x and later). Older versions may have partial support.

Tips for GitLab

Expand All Discussions

Before extracting, ensure all discussion threads are expanded. Collapsed threads may not be fully captured.

Use Expand References

GitLab's more permissive API makes Expand References particularly useful. Enable it to automatically include code from links in comments.

Filter CI Comments

GitLab's CI/CD often posts automated comments. Consider excluding:

  • @gitlab-ci
  • Project-specific bot accounts
  • Integration accounts

Unresolved Only

If you only want unresolved threads, you can use GitLab's built-in filter before extracting. GitSniper captures what's visible on the page.

Limitations

Draft MRs

Draft MRs work normally. All comments are extracted regardless of draft status.

Confidential MRs

Confidential MRs in projects you have access to work normally. GitSniper uses your existing browser session.

Very Large MRs

MRs with hundreds of comments may take a moment to process. GitSniper handles them sequentially without issues.

Troubleshooting

Button Not Appearing

If the GitSniper button doesn't appear:

  1. Refresh the page
  2. Ensure you're on an MR page (not the project overview)
  3. Check that the extension is enabled
  4. Try disabling other extensions that modify GitLab's interface

Incomplete Extraction

If some comments are missing:

  1. Expand all collapsed discussions
  2. Scroll through the diff to load all comments
  3. Check if any discussions are in tabs you haven't opened
  4. Extract again

Self-Hosted Issues

If GitSniper doesn't work on your self-hosted instance:

  1. Verify you're on a merge request page
  2. Check browser console for errors
  3. Ensure the page fully loaded before extracting
  4. Report the issue with your GitLab version

If Expand References isn't working:

  1. Ensure you're logged into GitLab
  2. Check that linked content is accessible to your account
  3. Verify the link format is supported (blob, commit references)