Difference between revisions of "Gitlab Social Sciences"

From TSG Doc
Jump to navigation Jump to search
m (Shorter initial sentences)
 
(27 intermediate revisions by 2 users not shown)
Line 14: Line 14:
 
| installed version      =  
 
| installed version      =  
 
| installed version date = <!-- {{Start date and age|YYYY|MM|DD|df=yes}} -->
 
| installed version date = <!-- {{Start date and age|YYYY|MM|DD|df=yes}} -->
| status                = Active
 
| programming language  = Ruby
 
| operating system      =
 
 
| platform              = Microsoft Windows, MacOSX, Linux
 
| platform              = Microsoft Windows, MacOSX, Linux
| size                  =
 
| language              =
 
| genre                  =
 
 
| license                = [https://en.wikipedia.org/wiki/MIT_License MIT License]
 
| license                = [https://en.wikipedia.org/wiki/MIT_License MIT License]
 
| website                = [https://gitlab.socsci.ru.nl/ gitlab.socsci.ru.nl]
 
| website                = [https://gitlab.socsci.ru.nl/ gitlab.socsci.ru.nl]
| resources              =  
+
| resources              = <!-- Infobox -->
 
   {{Infobox tsg
 
   {{Infobox tsg
 
     | child              = yes
 
     | child              = yes
Line 38: Line 32:
 
}}
 
}}
  
The Social Sciences GitLab server offers [[wikipedia:Git|Git]] repository management, code reviews, issue tracking, activity feeds and wikis.  
+
The [https://gitlab.socsci.ru.nl Social Sciences GitLab server] offers [[wikipedia:Git|Git]] repository management, code reviews, issue tracking, and wikis.
 +
With the [[Mattermost Social Sciences]] you can chat with your colleagues and interact with your projects.
  
 
<!-- Table of Contents will be generated here -->
 
<!-- Table of Contents will be generated here -->
  
==Features==
+
== Features ==
With Gitlab you can:
+
With GitLab you can easily manage your projects, synchronize your code between computers, or create wiki-pages for documentation.
* Create code together
+
Whether you write code or a paper, you can review, deploy, or document your project together with others.
* Review code together
+
You can create at least 50 projects, make them private or share them with your lab members, or even the entire Internet.
* Deploy code together
+
With [[Mattermost Social Sciences]] you can chat with your colleagues and even manage the project through chat commands.
* Document code together
 
  
===Requirements===
+
Think of GitLab as a "Facebook" around your projects.
* [https://git-scm.com/downloads Git].  
+
Similar services include e.g. [https://github.com GitHub.com] or [https://gitlab.com GitLab.com] (which also runs the GitLab software on their servers).
* A Radboud University account (U-, S-, E- or F-number).
+
In contrast to these services, GitLab Social Sciences is self-hosted on a server on the Radboud campus.
 +
That means we determine our own terms of use; for example, you can get private projects for free - on GitHub, you would have to pay.
  
==External Users==
+
Note that there's another self-hosted [https://gitlab.science.ru.nl GitLab service running at the Faculty of Science].
If you want to allow people without Radboud University account to access and contribute to your Gitlab project, you can request a standard user account by sending an email to
+
Anyone who has a "science login" can also use this service; it's running the same software - just the login page looks different.
[mailto:j.keyser@donders.ru.nl Johannes Keyser (DCC)] or [mailto:e.lieffers@ru.nl Eric Lieffers (ISC)]. <br/>Be sure to include the following information:
 
{| class="wikitable"
 
| Username
 
|-
 
| Email adres
 
|-
 
| Full Name
 
|-
 
|}
 
  
==Configuration==
+
== Requirements ==
 +
1. A GitLab account to log in at https://gitlab.socsci.ru.nl:
 +
* Everyone from Radboud University can login (with their U-, S-, E- or F-number). Members of UMC with Z-numbers have to request external accounts, see below.
 +
* External users can ask for an account and then login with their username (switch to the "Standard" tab in the Sign-In page).
 +
2. For more than the most basic tasks, you'll also need to install [https://git-scm.com/downloads Git] on your computer.
  
The following instructions are for the command line interface. If you are using a graphical user interface (e.g. a desktop client), please consult its documentation for further instructions.
+
== Login for external users ==
 +
External user accounts should be requested from a member of Radboud University.
 +
If you want to allow people without RU account to join your Mattermost team or GitLab project, please request an account by sending an email to
 +
[mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl].
 +
Please provide the full name of the user, a requested username, and a valid email address, preferably from the university or organization the person is working at.
  
===Global Setup===
+
''Note that with an external account, the user has to switch to the "Standard" tab on the Sign-In page.''
 +
From GitLab's point of view, all accounts have the same rights and restrictions.
 +
Once logged in, there are no further differences.
  
<pre style="background-color:#000; color:#fff;">
+
== Setup, Configuration and Usage of Git clients ==
$ git config --global user.name "your-username-here"
+
For more advanced tasks, you will need a Git installed on your computer.
$ git config --global user.email "your-email-address-here"
+
There is excellent documentation for this available throughout the Internet, for example https://git-scm.com/documentation or https://docs.gitlab.com/ce/gitlab-basics/README.html.
</pre>
+
It would make little sense to repeat these here.
 +
There are many graphical user interfaces available for every major operating system.
 +
In addition, many development software packages (including Matlab) are aware of Git repositories and you can set them up to work with GitLab.
 +
Note that for most daily tasks, only about 5 Git operations are necessary to know about.
  
Your username will be visible when pushing a commit to the Gitlab server.
+
== Frequently asked questions ==
Your email address should be the same as your primary Radboud email address, or if you are an external user, the one provided in your user request.
 
  
==Usage==
+
=== Who has access to gitlab.socsci.ru.nl? ===
 +
Short answer: Anyone from Radboud University, and some people from other universities.
  
The following instructions are for the command line interface. If you are using a graphical user interface (e.g. a desktop client), please consult its documentation for further instructions. When creating a new project in the [https://gitlab.socsci.ru.nl web interface], you will also be given these instructions.
+
Longer answer: All employees and students of Radboud University have access (with their U-, S-, E- or F-number).
 +
Members from Radboud UMC with Z-numbers have to request external accounts, see above.
 +
If you log in the first time, a corresponding account will be created.
 +
In addition, you can request accounts for people from other universities, for example to collaborate with them on confidential projects.
 +
See External Users above.
  
===Creating a new repository===
+
=== Who can see my project(s) within GitLab? ===
<pre style="background-color:#000; color:#fff;">
+
Short answer: You decide for each project (if you're the project owner).
$ mkdir newproject
 
$ cd newproject
 
$ git init
 
$ touch README.md
 
$ git add README.md
 
$ git commit -m "initial commit"
 
$ git remote add origin git@gitlab.socsci.ru.nl:username/newproject.git
 
$ git push -u origin master
 
</pre>
 
Substitute 'newproject' with your project name and 'username' with your username.
 
  
===Push an existing Git repository===
+
Longer answer: GitLab distinguishes read-access within 3 layers, and you can choose for each project individually.
 +
Each project can be either
 +
* ''private'': only you and your hand-picked users (and groups) can read it,
 +
* or ''internal'': anyone with a GitLab account can read it,
 +
* or ''public'': anyone on the Internet can read it.
 +
For more information, see https://gitlab.socsci.ru.nl/help/public_access/public_access#visibility-of-projects.
  
<pre style="background-color:#000; color:#fff;">
+
=== What can/should be stored on GitLab? ===
$ cd existing-git-repo
+
Short answer: Scripts, documentation, theses, figures etc. '''No research data please!''' For research data, use https://data.donders.ru.nl/.
$ git remote add origin git@gitlab.socsci.ru.nl:username/newproject.git
+
For some niche cases, GitLab's Large File Storage (LFS) might be useful, see below.
$ git push -u origin master
 
</pre>
 
Substitute 'newproject' with your project name.
 
  
=== Troubleshoot ===
+
Longer answer: Git and GitLab are meant primarily for smaller amounts of data (think Megabytes, not Gigabytes).
 +
Most features, like comparing versions, only really make sense with changing text-based files.
 +
Git keeps track of every change you make in its history, and thus content is never really deleted.
 +
That means Git repositories only grow larger, and even if you "delete" files, you can go back and un-delete them.
 +
That's a main feature, you get an "unlimited undo" for all kinds of files (and across different editors and computers).
  
Some users will see the  following message when they want to make a remote connection with SSH. (existing repository)
+
Keeping an unchangeable history makes it impractical for binary data - you can't really delete them, comparing versions of them makes little sense.
When you see the below message you will need to say yes.
+
And potentially you later want to make the project available to more people - but maybe without sharing all data.
 +
For these reasons, please use https://data.donders.ru.nl/ for your research data.
  
<pre style="background-color:#000; color:#fff;">
+
In case you need certain large data files for your development, GitLab offers Large File Storage (LFS).
$ Warning: the ECDSA host key for 'gitlab.socsci.ru.nl' differs from the key for the IP address 'x.x.x.x'
+
Please only use this feature after careful consideration, for files that are integral to your project and for which no other data repository makes sense.
$ Offending key for IP in /home/user/.ssh/known_hosts:23 Matching host key in /home/user/.ssh/known_hosts:13
+
Note that you need to install the LFS extension on your local machine to use this.
$ Are you sure you want to continue connecting (yes/no)? yes
+
For more documentation, please refer to https://docs.gitlab.com/ce/workflow/lfs/manage_large_binaries_with_git_lfs.html.
</pre>
 
  
Remote SSH connection should now be established.
+
=== What happens to my GitLab projects when I leave? ===
 +
First, if you use Git on your computer, you will have the entire history also locally on your machine.
 +
Without a valid RU account, also your GitLab access will become inactive.
 +
If you want to retain access, you are welcome to ask for an External User account.
 +
There are currently no plans to delete any content when an account becomes inactive.
  
For other technical issues you can contact [mailto:e.lieffers@ru.nl Eric Lieffers (Server Administrator)]
+
=== Who decides the GitLab policies? ===
 +
Since the GitLab service is still quite new, not all policies have been fully been worked out yet.
 +
You are welcome to contribute to our Terms Of Use and shape the future of the service.
 +
We are certainly open to any suggestions, and want to make it as useful as possible for everyone.
 +
Just send an email to [mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl].
  
== Git Clients ==
 
  
You can find the git clients for various operating systems [https://git-scm.com/downloads here].
+
== Troubleshooting ==
Additionally, you may be able to find a Git plugin for your code editor of choice.
+
For technical issues you can contact [mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl].
 +
 
 +
=== Known issues ===
 +
 
 +
* Login does not work with (some) versions of the Safari web browser. ''The only solution we know of is to use another browser, sorry for the inconvenience.''
  
 
<!-- ==References==
 
<!-- ==References==

Latest revision as of 16:06, 15 February 2019

Gitlab Social Sciences
Wm no bg.svg
PlatformMicrosoft Windows, MacOSX, Linux
LicenseMIT License
Websitegitlab.socsci.ru.nl
Downloads
Manuals

The Social Sciences GitLab server offers Git repository management, code reviews, issue tracking, and wikis. With the Mattermost Social Sciences you can chat with your colleagues and interact with your projects.


Features

With GitLab you can easily manage your projects, synchronize your code between computers, or create wiki-pages for documentation. Whether you write code or a paper, you can review, deploy, or document your project together with others. You can create at least 50 projects, make them private or share them with your lab members, or even the entire Internet. With Mattermost Social Sciences you can chat with your colleagues and even manage the project through chat commands.

Think of GitLab as a "Facebook" around your projects. Similar services include e.g. GitHub.com or GitLab.com (which also runs the GitLab software on their servers). In contrast to these services, GitLab Social Sciences is self-hosted on a server on the Radboud campus. That means we determine our own terms of use; for example, you can get private projects for free - on GitHub, you would have to pay.

Note that there's another self-hosted GitLab service running at the Faculty of Science. Anyone who has a "science login" can also use this service; it's running the same software - just the login page looks different.

Requirements

1. A GitLab account to log in at https://gitlab.socsci.ru.nl:

  • Everyone from Radboud University can login (with their U-, S-, E- or F-number). Members of UMC with Z-numbers have to request external accounts, see below.
  • External users can ask for an account and then login with their username (switch to the "Standard" tab in the Sign-In page).

2. For more than the most basic tasks, you'll also need to install Git on your computer.

Login for external users

External user accounts should be requested from a member of Radboud University. If you want to allow people without RU account to join your Mattermost team or GitLab project, please request an account by sending an email to gitlab@socsci.ru.nl. Please provide the full name of the user, a requested username, and a valid email address, preferably from the university or organization the person is working at.

Note that with an external account, the user has to switch to the "Standard" tab on the Sign-In page. From GitLab's point of view, all accounts have the same rights and restrictions. Once logged in, there are no further differences.

Setup, Configuration and Usage of Git clients

For more advanced tasks, you will need a Git installed on your computer. There is excellent documentation for this available throughout the Internet, for example https://git-scm.com/documentation or https://docs.gitlab.com/ce/gitlab-basics/README.html. It would make little sense to repeat these here. There are many graphical user interfaces available for every major operating system. In addition, many development software packages (including Matlab) are aware of Git repositories and you can set them up to work with GitLab. Note that for most daily tasks, only about 5 Git operations are necessary to know about.

Frequently asked questions

Who has access to gitlab.socsci.ru.nl?

Short answer: Anyone from Radboud University, and some people from other universities.

Longer answer: All employees and students of Radboud University have access (with their U-, S-, E- or F-number). Members from Radboud UMC with Z-numbers have to request external accounts, see above. If you log in the first time, a corresponding account will be created. In addition, you can request accounts for people from other universities, for example to collaborate with them on confidential projects. See External Users above.

Who can see my project(s) within GitLab?

Short answer: You decide for each project (if you're the project owner).

Longer answer: GitLab distinguishes read-access within 3 layers, and you can choose for each project individually. Each project can be either

  • private: only you and your hand-picked users (and groups) can read it,
  • or internal: anyone with a GitLab account can read it,
  • or public: anyone on the Internet can read it.

For more information, see https://gitlab.socsci.ru.nl/help/public_access/public_access#visibility-of-projects.

What can/should be stored on GitLab?

Short answer: Scripts, documentation, theses, figures etc. No research data please! For research data, use https://data.donders.ru.nl/. For some niche cases, GitLab's Large File Storage (LFS) might be useful, see below.

Longer answer: Git and GitLab are meant primarily for smaller amounts of data (think Megabytes, not Gigabytes). Most features, like comparing versions, only really make sense with changing text-based files. Git keeps track of every change you make in its history, and thus content is never really deleted. That means Git repositories only grow larger, and even if you "delete" files, you can go back and un-delete them. That's a main feature, you get an "unlimited undo" for all kinds of files (and across different editors and computers).

Keeping an unchangeable history makes it impractical for binary data - you can't really delete them, comparing versions of them makes little sense. And potentially you later want to make the project available to more people - but maybe without sharing all data. For these reasons, please use https://data.donders.ru.nl/ for your research data.

In case you need certain large data files for your development, GitLab offers Large File Storage (LFS). Please only use this feature after careful consideration, for files that are integral to your project and for which no other data repository makes sense. Note that you need to install the LFS extension on your local machine to use this. For more documentation, please refer to https://docs.gitlab.com/ce/workflow/lfs/manage_large_binaries_with_git_lfs.html.

What happens to my GitLab projects when I leave?

First, if you use Git on your computer, you will have the entire history also locally on your machine. Without a valid RU account, also your GitLab access will become inactive. If you want to retain access, you are welcome to ask for an External User account. There are currently no plans to delete any content when an account becomes inactive.

Who decides the GitLab policies?

Since the GitLab service is still quite new, not all policies have been fully been worked out yet. You are welcome to contribute to our Terms Of Use and shape the future of the service. We are certainly open to any suggestions, and want to make it as useful as possible for everyone. Just send an email to gitlab@socsci.ru.nl.


Troubleshooting

For technical issues you can contact gitlab@socsci.ru.nl.

Known issues

  • Login does not work with (some) versions of the Safari web browser. The only solution we know of is to use another browser, sorry for the inconvenience.


External Links