GitLab ?

Principe

Le problème exposé dans ce sujet a été résolu.

Bonjour à tous et à toutes,

depuis quelques temps je m’intéresse à GitLab cependant je n’ai pas vraiment bien saisi le principe.

Quel est la grosse différence par rapport à GitHub ? Faut-il avoir son propre serveur (ex : Raspberry pi) ou le code est envoyé sur les serveurs de GitLab ?

Merci d’avance pour vos réponses et vos éclaircissements

+0 -0

Salut,

Je répond rapidement étant sur téléphone. Tu as le choix : il y a une instance publique ou tu peux installer ton instance (gratuitement en prenant la community edition, il y a une édition pro payante). Je dirais que la principale différence avec Github est que gitlab (je parle de l’instance publique là) permet d’avoir gratuitement des repos privés. Par contre un projet public sur Github aura largement plus de visibilité.

Par contre, tu risques d’avoir du mal à faire tourner un GitLab sur un Raspberry Pi, regarde plutôt du côté de Gogs voire de cgit si tu as une “infrastructure” légère comme ça ;-)

motet-a

Je confirme, j’ai eu une très bonne expérience avec gogs sur un rpi2. Des temps de chargements de pages de ~100ms sans modification de la configuration de ma part.

L’intérêt de Gitlab par rapport à Github, c’est que si tu veux garder tous tes codes chez toi tu peux sans soucis, il faut juste avoir un pc/serveur avec un minimum de RAM, mais chez moi, 2Go de RAM et un intel core 2 duo, ça tourne sans soucis. (Mais effectivement, pas sur raspi…)

Ça c’est si tu l’installes chez toi. Sinon, tu peux passer par l’instance publique, et là tous tes projets seront sur l’instance, mais par rapport à Github tu auras l’intérêt de pouvoir faire des dépôts privés gratuitement.

Par contre, je trouve que par rapport à Github, il y a beaucoup moins de projets libre sur l’instance publique, donc si ton but c’est de contribuer, Github c’est mieux. :p

Chez moi, ça tourne sans soucis. Après, la plupart du temps je suis seul sur l’instance : peut-être le nombre de personne qui bouffe de la RAM, ou alors à chaque action ?

En tout cas, je viens de vérifier en tâche de fond, rien d’exceptionnel, je dois avoir une quinzaine de projets je pense, certains plus actifs que d’autres.

Après, sinon ce qui est pas mal avec Gitlab, c’est Gitlab-CI, ça demande une machine assez puissante, mais ça permet de faire de l’integration continue avec Gitlab. L’exemple typique, c’est qu’au moment d’une merge request (=Pull Request), ça lance la compil’, les tests, et vérifie que tout passe pour pouvoir merger. C’est possible avec Github en utilisant Travis-CI ou équivalent, mais là tout est intégré. :)

C’est tout à fait possible. En tout cas je viens de trouver ça sur le site de Gitlab. ;-)

https://docs.gitlab.com/ce/install/requirements.html#memory

  • 1GB RAM + 3GB of swap is the absolute minimum but we strongly advise against this amount of memory. See the unicorn worker section below for more advice.
  • 2GB RAM + 2GB swap supports up to 100 users but it will be very slow
  • 4GB RAM is the recommended memory size for all installations and supports up to 100 users
  • 8GB RAM supports up to 1,000 users

Merci à tous pour vos réponses, vous pensez que gogs pourrait permettre le développement d’un jeu sous Unity sans problème ?

Fatavis

Gogs est juste une espèce de serveur et d’interface web pour Git. Gogs, GitLab, cgit, GitHub et gitweb peuvent tous supporter n’importe quel projet de n’importe quelle taille. Et Git est extrêmement scalable si on l’utilise correctement.

Dans le cadre d’un jeu sous Unity où il peut y avoir des fichiers binaires assez gros (modèles, textures et autres), il faut penser au fait que Git ne gère pas toujours ça bien de base (Git est avant tout conçu pour du texte), mais il existe Git LFS qui est une sorte d’extension pour gérer ce problème.

+2 -0

Petit aparthé1, il me semble que Gogs n’est plus super bien maintenu et que le projet Gitea est à privilégié désormais. À vérifier.


  1. c’est pour ce genre de mini-poste que les commentaires de post à là Stackoverflow me manquent ici. 

+2 -0

Et Git est extrêmement scalable si on l’utilise correctement.

À condition de contrôler le nombre de branches et de ne pas dépasser les 2 Go par dépôt, sans quoi on peut facilement se taper un git clone de plusieurs minutes.

L’autre solution étant de séparer son code en dépôts multiples, sauf qu’il n’existe pas ou peu d’outils permettant de gérer automatiquement les dépendances entre dépôts.

Perso je ne dirais pas que git est "extrêmement scalable". À une certaine échelle, il ne se suffit plus à lui-même et maintenir le dépôt dans un état utilisable demande un boulot considérable. Cela dit il s’en sort toujours beaucoup mieux que ses concurrents.

+4 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte