diff --git a/.Rbuildignore b/.Rbuildignore
index 05e10d5cfc352f993897ee67402fd341c80ae190..40f7f3d02d855fc110e86d97822aab029539f082 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -6,3 +6,4 @@
 ^Notizen\.md$
 ^LICENSE\.txt$
 ^\.gitlab$
+^\.gitlab-ci\.yml$
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9da68d6296e4942d9b3f868112baf9a48f606c1a
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,25 @@
+# Using the rocker/tidyverse image because it has devtools installed.
+
+.check_template: &check_job_template
+  only:
+    - master
+    - merge_requests
+    - tags
+  script:
+    - R -e 'devtools::install_deps(quiet = TRUE)'
+    - R -e 'devtools::check(error_on = "warning")'
+
+# latest version of the previous major R release
+check-previous:
+  image: rocker/tidyverse:3.5.3
+  <<: *check_job_template
+
+# latest R release
+check-latest:
+  image: rocker/tidyverse:latest
+  <<: *check_job_template
+
+# R development version
+check-devel:
+  image: rocker/tidyverse:devel
+  <<: *check_job_template