Setting up and using a Gitlab repository

Project defaults

  • Use Editor config settings
  • Use default .gitignore settings
  • Disable unused features in project setting, e.g. forks, LFS, CI, registry, wiki, snippets. They can always be re-enabled later, but significantly reduce clutter when not applicable to a project.
  • Take the time to plan and setup the project from the start
  • Provide useful descriptions when creating projects.

Merging

  • The default branch, usually called master, should be protected with no one being allowed to push. Allow changes to the default branch should be done through merge requests.
  • Create a new branch for each new feature or fix. Be sure the new feature is complete before merging.
  • Have someone other than the author review the changes before merging.
  • Test and validate the changes before merging,

Commit messages

  • Tell why the change was made. What was changes is evident in the commit itself.
  • First line is a succinct, unambiguous, and complete summary. Subsequent lines should only clarify and expand what is summarized in the first line.

Large static files

  • Large static files should be stored using the git-lfs

File types

  • Prefer text based file formats, e.g. Markdown, over proprietary formats like PDF or Word.