Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • Git Beginners Git Beginners
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Insights
    • Issue
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Computer-ScienceComputer-Science
  • Git BeginnersGit Beginners
  • Wiki
  • Home

Home · Changes

Page history
Update Home authored Jul 20, 2018 by Andrew James Collett's avatar Andrew James Collett
Hide whitespace changes
Inline Side-by-side
Home.md
View page @ ebfdd1c1
## Welcome to GitLab!
If this is your first time using `git` or simply using this GitLab server, please read through __[First time using GitLab](#first-time-using-gitlab)__ before anything else.
If this is your first time using `git` or simply using this GitLab server, please read through __[First time using GitLab](first-time)__ before anything else.
If you are looking for GitLab's docs? They are **[here.](https://git.cs.sun.ac.za/help/#gitlab-documentation)**
## Guide contents
[[_TOC_]]
## Git quick reference
......@@ -41,53 +39,6 @@ Command | Effect
2. `git commit` the changes in the staging area to a commit.
2. `git push`
## First time using GitLab
This section is aimed towards first time users of both Git and this instance of GitLab.
### What is `git` and GitLab?
Let's get this info from git's website:
> "[Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.](https://git-scm.com/)"
Then from the Wikipedia page about GitLab:
> "[GitLab is a web-based Git-repository manager with wiki and issue-tracking features, using an open-source license, developed by GitLab Inc.](https://en.wikipedia.org/wiki/GitLab)"
For you, as a student, this means you will
1. Learn how to use version control in order to help prepare you for the working world,
2. Be able to safely submit and track your code, with the over-site of the lecturers and demis,
3. Have a safe place for your project code, provided you push your local changes back to the CS GitLab server.
**NOTE:** Always have a number of *safe* and *secure* backups of your code. GitLab should house one of a few copies of your projects.
### Login
GitLab has been setup such that you can login with your Stellenbosch University credentials.
1. Click the **Sign In / Register** button at the top corner, or **[click here](https://git.cs.sun.ac.za/users/sign_in)** to open the login page in a new tab.
2. Now click the **US Single Sign-On button** encircled in red in the below image.
![fred](media/login.png)
3. You will be re-directed to the University single sign on system to login.
Congratulations! You should now be logged in. You won't be able to create any projects or groups as an undergraduate, but if you are a postgraduate, you can request permissions for this.
If you have been enrolled in a course that uses GitLab for projects, you should see the projects listed on this page.
### SSH key Setup
Next, we will need to add your SSH key so that you can `clone` a copy of the project repository (or repo for short) to your local PC. We assume you are using a NARGA machine, but these instructions should be applicable for any Linux machine.
### First project clone
### Understanding the `git` workflow
All commands need to be executed within the directory of your git repo.
### Best practices for your own (and others) sanity
1. Add changes to your commit often.
2. Commit when-ever you step away from your work.
3. Try keep all changes in a commit related. The above is more important than this though.
4. Make your commit messages helpful. Short, but descriptive. Remember you can enter a 2nd line of text.
### Links and Videos
Link | Description
......
Clone repository
  • Home