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
| |
− | | operating system = any
| |
| | 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 37: |
Line 32: |
| }} | | }} |
| | | |
− | The [https://gitlab.socsci.ru.nl 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 easily manage your projects, synchronize your code between computers, or create wiki-pages for documentation. | | 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. | | 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, and you can make them private, or share them with your lab members, or even the entire Internet. | + | 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. | | Think of GitLab as a "Facebook" around your projects. |
− | Similar services include e.g. [https://github.com GitHub.com] or [https//:gitlab.com GitLab.com]. | + | 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). |
− | In contrast to these services, GitLab Social Sciences is self-hosted by the Radboud University, running on our own servers on campus. | + | 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, here you can private projects for free - on GitHub, you would have to pay. | + | 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. |
| | | |
− | ==Requirements== | + | Note that there's another self-hosted [https://gitlab.science.ru.nl 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: | | 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). | + | * 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). | | * 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. | | 2. For more than the most basic tasks, you'll also need to install [https://git-scm.com/downloads Git] on your computer. |
| | | |
− | ==External Users== | + | == Login for external users == |
− | 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 | + | External user accounts should be requested from a member of Radboud University. |
− | [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: | + | 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 |
− | {| class="wikitable"
| + | [mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl]. |
− | | Username
| + | 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. |
− | |-
| |
− | | Email adres
| |
− | |-
| |
− | | Full Name
| |
− | |-
| |
− | |}
| |
| | | |
− | ==Configuration==
| + | ''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. |
| | | |
− | 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.
| + | == 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. |
| | | |
− | ===Global Setup=== | + | == Frequently asked questions == |
| | | |
− | <pre style="background-color:#000; color:#fff;">
| + | === Who has access to gitlab.socsci.ru.nl? === |
− | $ git config --global user.name "your-username-here"
| + | Short answer: Anyone from Radboud University, and some people from other universities. |
− | $ git config --global user.email "your-email-address-here"
| |
− | </pre>
| |
| | | |
− | Your username will be visible when pushing a commit to the Gitlab server.
| + | Longer answer: All employees and students of Radboud University have access (with their U-, S-, E- or F-number). |
− | 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.
| + | 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. |
| | | |
− | ==Usage== | + | === Who can see my project(s) within GitLab? === |
| + | Short answer: You decide for each project (if you're the project owner). |
| | | |
− | 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: 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. |
| | | |
− | ===Creating a new repository=== | + | === What can/should be stored on GitLab? === |
− | <pre style="background-color:#000; color:#fff;">
| + | Short answer: Scripts, documentation, theses, figures etc. '''No research data please!''' For research data, use https://data.donders.ru.nl/. |
− | $ mkdir newproject
| + | For some niche cases, GitLab's Large File Storage (LFS) might be useful, see below. |
− | $ 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: 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). |
| | | |
− | <pre style="background-color:#000; color:#fff;">
| + | Keeping an unchangeable history makes it impractical for binary data - you can't really delete them, comparing versions of them makes little sense. |
− | $ cd existing-git-repo
| + | And potentially you later want to make the project available to more people - but maybe without sharing all data. |
− | $ git remote add origin git@gitlab.socsci.ru.nl:username/newproject.git
| + | For these reasons, please use https://data.donders.ru.nl/ for your research data. |
− | $ git push -u origin master
| |
− | </pre>
| |
− | Substitute 'newproject' with your project name.
| |
| | | |
− | === Troubleshoot ===
| + | 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. |
| | | |
− | Some users will see the following message when they want to make a remote connection with SSH. (existing repository)
| + | === What happens to my GitLab projects when I leave? === |
− | When you see the below message you will need to say yes.
| + | 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. |
| | | |
− | <pre style="background-color:#000; color:#fff;">
| + | === Who decides the GitLab policies? === |
− | $ Warning: the ECDSA host key for 'gitlab.socsci.ru.nl' differs from the key for the IP address 'x.x.x.x'
| + | Since the GitLab service is still quite new, not all policies have been fully been worked out yet. |
− | $ Offending key for IP in /home/user/.ssh/known_hosts:23 Matching host key in /home/user/.ssh/known_hosts:13
| + | You are welcome to contribute to our Terms Of Use and shape the future of the service. |
− | $ Are you sure you want to continue connecting (yes/no)? yes
| + | We are certainly open to any suggestions, and want to make it as useful as possible for everyone. |
− | </pre>
| + | Just send an email to [mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl]. |
| | | |
− | Remote SSH connection should now be established.
| |
| | | |
− | For other technical issues you can contact [mailto:e.lieffers@ru.nl Eric Lieffers (Server Administrator)] | + | == Troubleshooting == |
| + | For technical issues you can contact [mailto:gitlab@socsci.ru.nl gitlab@socsci.ru.nl]. |
| | | |
− | == Git Clients == | + | === Known issues === |
| | | |
− | You can find the git clients for various operating systems [https://git-scm.com/downloads here].
| + | * 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.'' |
− | Additionally, you may be able to find a Git plugin for your code editor of choice.
| |
| | | |
| <!-- ==References== | | <!-- ==References== |