Imports gitlab MRs into the local repository using the git series format.
Start by adding a "gitlab" section to your repo's config file (.git/config):
[gitlab]
projectId = 42
url = gitlab.mydomain.com
privateToken = "xyz123abc456pqr789st"
You can get a private token from http://gitlab.mydomain.com/profile/account if you don't have one yet.
The working directory must be within a checkout of the specified project. If
gitlab-sync can't find the branches referenced by an MR, it will fail to
import it.
Each MR is imported as a git series. If a series already exists, it is updated.
If you run gitlab-sync regularly you get the complete history of all MRs.
By default, only open MRs are imported (override with -a).
If gitlab-sync fails while communicating with gitlab, it may be due to a
gitlab version incompatibility. You can fix this by changing the version of
the gitlab package in Cargo.toml so that it matches your version of gitlab.
(See here for more information.)
The MRs are imported in the format understood by git-series, so you could use
that; but these days (git-2.19+) you don't even need to have git-series
installed to view the ddiffs - it's supported in the base distribution!
Suppose you reviewed MR !2572 last week, but the author has pushed 13 times since then. To see the changes since your last review, simply:
$ SERIES=git-series/gitlab/2572
$ git range-diff ${SERIES}~13:base..${SERIES}~13:series ${SERIES}:base..${SERIES}:series
Try it! I'm pretty sure this is the best way to re-review a branch.
This is free and unencumbered software released into the public domain. See UNLICENSE or http://unlicense.org/.