GitLab est une plateforme intégrée et open source de gestion du cycle de vie DevOps permettant aux équipes de développement de logiciels de planifier, coder, tester, déployer et surveiller les modifications de produits au sein d'une seule application. Elle aide les utilisateurs à rationaliser leurs flux de travail collaboratifs et à visualiser, hiérarchiser, coordonner et suivre les progrès via des outils de gestion de projet flexibles.
GitLab contribue à rationaliser les flux de travail collaboratifs, qu'une équipe utilise des méthodes de développement Agile, Waterfall ou conversationnelles. Les utilisateurs peuvent écrire et gérer en toute sécurité le code et les données de projet et consolider le code source dans un seul système de gestion de version distribuée (DVCS) qui peut être géré sans interrompre le flux de travail. Les référentiels Git de cette plateforme sont fournis avec des outils de branchement et des contrôles d'accès pour un référentiel de contenus unique et évolutif idéal pour la collaboration sur des projets et du code.
Les utilisateurs peuvent personnaliser leurs contrôles de flux de travail d'approbation et tester automatiquement la qualité du code. Les outils de vérification de GitLab permettent de détecter les erreurs plus rapidement tout en raccourcissant les cycles des opinions grâce à des fonctionnalités telles que la révision du code intégrée, le test de code, la qualité du code et les applications de révision. Les utilisateurs peuvent gérer des images de conteneur personnalisées à l'aide du registre de conteneurs, qui leur garantit une sécurité renforcée et des contrôles d'accès sans modules complémentaires tiers.
Les entreprises peuvent réduire la complexité en créant, testant et publiant leur code de manière sécurisée, qu'il s'agisse d'un déploiement sur un ou des milliers de serveurs, grâce à la fonctionnalité de distribution et de déploiement continus de GitLab. Les utilisateurs peuvent automatiser l'intégralité du flux de travail et tout personnaliser, des buildpacks aux CI/CD. Les modèles de meilleures pratiques les aident à démarrer avec une configuration minimale. Le logiciel collecte et affiche les métriques de performance des applications déployées via Prometheus. Les utilisateurs peuvent donc analyser la vitesse d'expédition et surveiller les performances des applications.
The overall experience was good. It's highly recommended for companies who want host their code in their own infra and are ready to maintain the code hosting software itself
I use the GitLab Community Edition (CE) and the first thing I love about it is it's Open Source! I am a believer of Open source software! In my company, we host our own instance of GitLab CE and it's been smooth. We use it for source code hosting and for CI/CD. Source code hosting has been great. CI/CD is nice too. GitLab has all the features required by a code hosting software - groups, groups within groups, repos, role based access control for members. Members can also be grouped with names - helpful to create a group for a team and add members to the group and give access to the team/group. It has forking, SSH/HTTPS git repo access, Notification/Watch repo features. It also has lots of integrations. We use slack a lot and we have integrations with slack which GitLab provides, and we have configured it to get notified for different things, starting from commit pushes to pipeline failures. We also use the GitLab pages for hosting the Wiki site for repos. It's pretty neat! The GitLab CI/CD has the concept of runners which run the CI/CD tasks/jobs. Runners have tags, and you can easily use the appropriate tag in the config to run the task in the appropriate runner. We use different runners for different things like, pushing to a Docker registry (requires special permissions), accessing a prod DB/application, running normal tasks (scripts) etc. All in all, it's quite good
Although GitLab has lots of features. I do have some complaints about it. I hope that newer versions will make my complaints obsolete! Starting with the CI/CD, it's quite good. But it lacks some features and flexibility which we expect in the upcoming versions. Features like one CI/CD pipeline triggering another pipeline (not present in CE, not sure about Enterprise Edition) and things like grouping jobs in a stage. Also, the CI/CD UI is not very good. It has glitches, there's no auto refresh in all the UIs to show the status of a job - if it's successful or if it failed. The job UI also isn't very great, like, if the job names or stage names are big, it becomes tough to read. Also, when the job log is very big, it reloads the page when the job finishes and truncates the output of the job and makes it available for download instead. This can be good or bad, based on the use case. For us, it was mostly not a soothing experience.
Best way to use it is to keep your gitlab organized is keeping pr's as functional as possible and not mashing 1000 changes into one pr. otherwise gitlab performance go down and so will the interest of the other people who review your merge request!!
Setting up gitlab to manage your software projects is child's play, and although the UI is minimal in design it which gets the job done but could definitely use some enhancements and that would make it a top tier no nonsense go-to-software-management-product.
Overall it is a great software. I am not aware of the quality of the customer service on the paid tier so can't comment on that. One can manage and maintain gitlab inhouse without needing any paid support.
I would recommend it without reservations to any and all software developing companies.
1. Free of cost
2. Highly efficient, does the job without uncertainty.
3. Never observed any downtime
4. Very frequent and proper updates to the software.
5. easy to maintain
6. can easily integrate with jenkins for Continuous Integration- Continuous Deployment.
7. Easy to setup and use, no support or setup or external teams required. Anybody with minimum computer skills can get this up and running.
8. easy integration with youtrack for issue tracking and merge requesting tracking
These are not very big cons, but I find them annoying and could definitely use improvement:
1. The edit description on an open merge request also shows up on the history. So If somebody were to make a 10 different changes to the title while keeping the
2. The code formatting in the description box is not too good. It can take several tries before getting it right.
3. There is no way of searching for something based on a line of text. For example if you were looking for a commit or a merge request but you only remember the
4. sometimes very challenging to go back and undo merges which are quite complex.
5. on a given pr, it shows icons of all the participants but doesn't say which participant did what... for example if 5 people have just viewed a pr and done nothing else even then it shows all of them as participants. It would be nice to have a feature which will only show activity by participant on every pr.
6. text based Search via ui is practically no existent. So if you search for something using a text which is part of a commit message, chances are it will not show up 100%.
Full suite of tools including but not limited to repository and issue tracking, milestones & issue boards, group and user management including project and even branch level permissions, continuous integration, scheduled jobs, project wiki, etc. All the features work together and using it to manage projects tends to pulls the details together rather than fragmenting them across different spaces.
The general workflow is similar enough to Github that most developers find it familiar. In fact there is probably feature parity or beyond, so other than needing another account there has never been much resistance to adoption among our developer team. At the same time the interface well designed enough for non developers to figure it out and stay involved as well.
The setup and update process is somewhat cumbersome on bare metal (probably easier using dedicated virtual machines and/or their omnibus package). There are a lot of dependencies and assumptions about the environment that make it much the most dreaded package to upgrade on my production servers.
It does kind of make assumptions about workflow that don't hold true for all projects. While it is flexible enough to adapt even when using only a subset of features on a project, it can leave people a little confused and overwhelmed because all the other unused bits are still around in the interface.
My team loves GitLab so much. Since the last 3 years, we use it regularly and we don't have a single complaint about it. We host all our repos here and manage our development stuff via milestones, issue boards, and other features. Overall it is an awesome platform will all the required features and tools.
GitLab is a complete set of tools which are required for software development.
- It provides self-managed version as well as the community version. Both are free of cost.
- It provides Continuous Integration and Continuous Development. I use it for most of my projects.
- Built-in issue boards, milestones - a very good feature for tracking development.
- Built-in Web IDE - a very nice feature to edit your files online.
- Groups, sub-groups for the repository - it helps to manage the repositories easily with user assignment, permissions, etc.
- A nice UI
There are no major cons with GitLab. It provides most of the things with its free edition. To list a few,
- With Community Edition, we sometimes face downtime.
- The wait time for running CI pipelines is sometimes higher.
- The pricing for the paid version is a little bit high for small agencies like mine.
Our team have been using both GitLab and its main competitor for a number of years. We use GitLab when our projects require a slight bit more fine-tuning and control over our repositories.
GitLab easily offers the ability to hide repos / projects from public view, something its competitors rarely do for free.
The team management within GitLab is great, we have multiple different teams in the system all with different access, and its very easy to share repositories with colleagues and control who can see what.
Integration with other Git applications is great, we use this with GitKraken all the time and we've never had problem.
My main problem with GitLab is its user-interface, in comparison to its competitors it's not good at all. Various functions seem to be hidden within obscure menus and hidden drop-downs. Not too much of a problem once you're used to it, but for new users, its a real issue.
The comment system isn't great, for some reason GitLab stores any and all edits that are made, meaning even the slightest change to a pull / merge comment is noted.
Voici quelques-unes des questions fréquentes sur GitLab.
Types de licences disponibles pour GitLab :
À partir de: 4,00 $US/mois
Type de licence: Open source, Abonnement
version d'essai gratuite: Non disponible
Nous n'avons pas d'informations sur les fonctionnalités de GitLab.
Utilisateurs habituels du logiciel GitLab :
Grandes entreprises, Entreprises de taille moyenne, PME
Langues dans lesquelles GitLab est disponible :
Types de licences disponibles pour GitLab:
Open source, Abonnement
Appareils pris en charge par GitLab :
Applications s'intégrant à GitLab :
Atolia, Forecast, GitPrime, Hubstaff, Hygger, LambdaTest, Marker.io, Tickd, Trello, craft
Ressources d'aide disponibles pour GitLab :
FAQ, Forum, Base de connaissances