LCM GitLab Server

User Conventions for Sign Up:

Full name: Upper case names (e.g.: Albert Einstein)
Username: Upper camel case (e.g.: AlbertEinstein)
Email: Company email (e.g.: albert.einstein@lcm.at)

Best Practices

Setup a .gitignore.
Use GitLab groups to introduce structure to the repository server.
Work with branches (see Git branching workflows).
Use tags to mark releases.

What Belongs in a Git Repository

Versioning and managment with Git works great with files in textual form (Git only stores the change). Files that are in a binary (e.g.: so, exe, jpg, zip) format are stored as such and therefore every version of this file is kept. Thus using more disk space (and here we have limited disk space).

  • Examples of what to put in a Git repository:
    • source codes and build scripts (e.g.: cmake, gradle)
    • text files
  • Examples of what NOT to put in a Git repository:
    • files (e.g.: binaries, figures, graphs, measurements) that can be reproduced by running/compiling code
    • libraries (link to library repo or artifact server)
    • video/image files
    • toolchains
    • docker/virtual machine images
  • Example of it depends:
    • IDE configuration files (better use a build script, or only commit build specific files)

Commit Messages

  • Begin the commit message with a single short (less than 50 character) capitalized line summarizing the change. (Will be treated as the commit title, and that title is used throughout Git.)
  • Blank line.
  • If needed a more thorough description.
LCM GitLab Server