9. Version Control System

9.1. Gitea

docker network create ecosystem
docker run \
    --name gitea \
    --detach \
    --rm \
    --env USER_UID=1000 \
    --env USER_GID=1000 \
    --network ecosystem \
    --publish 3000:3000 \
    --publish 2222:22 \
    --volume /home/gitea:/data \
    --volume /etc/timezone:/etc/timezone:ro \
    --volume /etc/localtime:/etc/localtime:ro \
    gitea/gitea
--env GITEA__database__DB_TYPE=postgres
--env GITEA__database__HOST=db:5432
--env GITEA__database__NAME=gitea
--env GITEA__database__USER=gitea
--env GITEA__database__PASSWD=gitea

9.2. Gitea Rootless

docker network create ecosystem

docker run \
    --name gitea \
    --detach \
    --rm \
    --network ecosystem \
    --publish 3000:3000 \
    --publish 2222:22 \
    --volume /home/gitea/data:/var/lib/gitea \
    --volume /home/gitea/config:/etc/gitea \
    --volume /etc/timezone:/etc/timezone:ro \
    --volume /etc/localtime:/etc/localtime:ro \
    gitea/gitea:latest-rootless

9.3. Git and Git Flow in CI/CD

../_images/gitflow-all4.png
../_images/gitflow-github3.png
../_images/gitflow-lean3.png

9.4. GitOps

9.5. Code Repository

Version Control System:

  • GIT

  • Mercurial

  • SVN

  • Perforce

  • CVS

Server:

  • GitLab

  • Gitea

  • Bitbucket Server

  • Github Enterprise

  • Gerrit

Cloud:

  • GitLab

  • Gitea

  • GitHub

  • Bitbucket Cloud