TLDR Web Dev · ARTICLES & TUTORIALS

WHAT HAPPENS ON GITLAB WHEN YOU DO GIT PUSH?

nanmu.me12 min read

Summary from the TLDR Web Dev newsletter

Git stores project history locally as objects and references (like branches). When you use 'git push', and your git remote is with GitLab, it sends these updates to a remote GitLab server. How you connect (SSH or HTTP(S)) determines the authentication method: SSH uses GitLab Shell for key-based verification, while HTTP(S) relies on Workhorse and Rails for authentication. Once authenticated, Gitaly takes over, managing your Git repository and executing 'git-receive-pack' to handle the incoming changes. Gitaly is used by GitLab to read and write Git data.