GitLab is a must for development teams
I love the Boards for tracking Issues in their life cycle. Customizable Columns and Labels make it quick and easy to see where an Issue is, giving a high level for management and the rest of the team, while having all the details and attached code branches and merge requests for the developer and stakeholders. I love how it's able to connect code from several projects to Issues, no matter where they live, so you can have as many boards and projects as you like! It's well put together and seems natural with everything I try to do organization-wise. Integrates really well with developers' workflows.
GitLab is always improving and enables you to request features, so if you want something, suggest it and they'll get to it! Sometimes that's a bit slow, but you can usually work around it.
GitLab resolved our version controlling problems, code review problems. It helps to maintain our code standards very easily. We can setup It on our local server also very easily. It is free anyone can try it.
GitLab is a superb source code managemanet provide. It is free. We can install it in our privet server also. As well as we can use their server with a free account. We use git for version control. GitLab provides awesome support for version control. It is a very easy tool. Anyone can use it very easily If someone has no more knowledge about versioning but He can use GitLab very easy. We can maintain our Repositories/Branchers. User access level also there. Currently, We use GitLab. We maintain feature branches, dev branch, and master branch. Everyone does not allow to merge code to the dev branch. If someone add merge request to the dev branch, our one-person review code and merge. Then we use GitLab it is easy for us. GitLab provides superb dashboard it very easy to review code. It shows all code changes with file by file. Easy to compare. As well as we can compare two branches vary easy. It provides a clear, unique, user-friendly dashboard. GitLab also supports CI/CD process. It's superb we can recommend for anyone. If our commit has some conflict it shows how to resolve that step by step.
When I add a new commit. If the file is large/have many lines. It not showing code changes directly. It shows a message file has many lines cannot show changes that kind of message. Sometimes when we compare two commits. It not more clear. Some times confusing. If I show some file history only show commits. not showing code changes by commits. We want to go and check every commits to show changes.
Powerful source code management platform
Gitlab is my primary source code management platform where I store the repositories of my applications. It's very powerful and easy to use. I really like the CI pipeline because easy to configure and provide the automation you need in deployment. Code review process is also very nice.
All the things I need for my daily usage are covered. Would be nice to have an out-of-the-box dependabot integration without having to configure so many things.
It's good but, definitely not the best
It works fine, and it's a good alternative for the usual Bitbucket, Jira and Bamboo (or Jenkins) combo that's commonly found on the corporate world. I'd recommend to consider Github Teams or Github Enterprise.
- Unlike Github, it can be installed locally, it also makes it highly customizable
- It has CI/CD functionality integrated
- It has code search and indexing
- It's integrated with a docker registry and multiple code repositories
- It's highly monolithic, if some feature fails, most of the times everything fails
- It's not easy to clusterize the service
- It's not easy to update, nor to migrate to a new server
- It costs the same to use the self-hosted than the cloud-hosted version
- Gitlab CI/CD shared (both free and paid minutes) run on a GCE Kubernetes cluster without any fixed IP address so it's hard to access your servers unless you open ports publicly or create a VPN tunnel
Ready to integrate different types of projects
We are very happy and pleased to use the tool.
Our ci-cd and approval / reviewer workflows are fully supported; this allows are agile practices taken to reality.
Great integration with git.
Always pushing new features to improve user overall experience.
Large set of integrations for different languages.
Large set of integrations for different tools for code quality, lint, code analysis, etc.
Pipeline allows almost any type of step for testing, building, deploying.
Great to have own registry.
API should be more powerful and package for most common languages as nodejs.
Registry navigator should be improved.
Members permission management could also be improved.
It is such a great system. We use it daily at work and I integrated it into my homelab as well to keep change controls and ci/cd under control. It has made my homelab crazy efficient when I need to do things. For work it makes our daily tasks very easy to manage and it's much more integrated than having to build out all of the atlassian stack.
This product is excellent and has both enterprise edition and community edition making it very inexpensive to get into and then moving to enterprise once setup and still very inexpensive compared to other options out there. You also can set up a private gitlab server either in docker or bare metal. I cannot rave enough about git lab.
There's not much to not like about it. It's a very capable system that can be deployed in every type of way imaginable. If I was to nitpick then I would say adding additional users can be a pain without having self registration available.
Most of best DevOps apps
- I use it to work with a team on a three projects, Backend, Consumer IOS and Consumer Android
- Audit Logs
- Create and remove admins easily with more configurations (Can be based on groups)
- Multiple Integrations with 3rd party services (can be with Trello to use it for Scrum purposes)
- File Attachments in to issues, merge requests and epics (Optionally)
- Easy file finder
- Migration made easy based on git
- Multiple analytics (Workspace, Productivity and Contribution)
- Kanban Boards
- Easy for use in Xcode (Xcode integration), so you can open Xcode project directly from GitLab
- Import and Export projects
- No desktop client found
- Explore projects not organized
- Slow page loading
- Low community posts
Helped us to get our private repository center
GitLab is a great tool for code version Control
We have been using Gitlab in some of our projects in our company and it´s really useful and powerful.
GitLab is really easy to use and powerful to help our team with code version control. It doesn´t take much time to understand the features and start to use.
Gitlab doesn´t have so much differences between other competitors. The features are almost the same.
Good Git Repo
Great for DevOps teams
GitLab has all the must-have features for complete development and deployment flow.
The easy-to-configure pipeline is a differential, mainly due to the possibility of installing the agent (GitLab runner) in our infrastructure.
Issue management and merge requests are excellent and do not fall short of your direct competitors.
I use the GitLab in the cloud (SaaS) and on-premises, and it supplies my DevOps needs and team collaboration on the code review process.
On bitbucket, it is possible to see in realtime when a coworker is reviewing the merge request (pull request). It would be great to see this feature on GitLab too. The Runner registration is a bit harder when using an automation like Ansible.
A great free alternative to GitHub if you need large repos and teams
GitLab helped us solve all of our backup and collaboration needs for our large file projects. While we do have on-site physical backups just in case, GitLab is great at keeping the core files safe. On the physical backup we put big assets and on GitLab mostly the code.
If it wasn't for GitLab we'd be using GitHub for some projects only as certain files surpass their limit.
The biggest pro for us at JeFawk Games (me and my freelancing friends, not employees as stated) was the fact that it allowed for 1GB of space for free in private repos! Since we're working on games, we really needed the space and the privacy. This was from before GitHub was acquired by Microsoft and gave away unlimited free repos.
Time forwarding a bit and GitHub is giving out free private repos of max 1GB with the option to use the Large File Storage thing, which in GitLab you don't need to bother with as you get it by default.
It includes DevOps and a lot of other features that frankly we don't make use of.
It's just the much bigger space by default and up to 3 collaborators. GitLab is great! Although it does have some cons....
One of the biggest problem with GitLab is that their website is a bit laggy. You can wait 1 to 4 seconds for some pages to load.
Another issue is that we actually use the GitHub Desktop application to handle GitLab repositories and the setup to connect the application to GitLab is kinda clunky, more like to allow GitLab to be grabbed as URL. Wouldn't wanna go through that again, hopefully they already streamlined it as last time I did it was about 2 years ago.
A discrete item in your toolkit
It is easy to use and don't impose itself it's own way to proceed.
At some point gitlab.com had big performances issues, it was very slow. Even posting a simple issue was a pain. Those issues got fixed and it is now very fast. In case of maintenance or temporary issues, they have a very transparent way of proceeding and we always receive alerts and/or post mortems.
You just forget about Gitlab. As it provide a whole devops toolkit, it integrates discretely in your workflow. It doesn't require training, and if needed for advanced use, it got an extensive documentation as any open source tool should have. The UI makes it easy to use without thinking about it. What you don't understand first, you'll find an usage if needed on day.
The fact it got integrated CI/CD is incredible. I am very reluctant to Docker technologies and wouldn't beat myself to deal with them, but I really like them the way they are integrated in the CI/CD: it makes possible to test the applications in a very efficient and simple maneer and improve the overall quality and security of my products.
What I really don't like is that, if it is possible do deactivate some feature of a repository because you don't use them, there are some that overload the UI and you cannot remove them because Gitlab use it as a way to make you upgrade to the next plan.
Made DevOps possible for my company
GitLab has enabled me to hit the ground running with DevOps. It's infinitely easier to use than a more traditional workflow comprised of various components.
It has enabled me - alone, unassisted, and with little free time - to benefit from things that I would never have been able to work with in my company's traditional software development workflow.
Our software engineers are somewhat resistant to change - especially because they went all-in for Mercurial even though the world is standardizing on Git. I hope to convince them of the merits of Git and GitLab over time.
When I talk about our company's "IT development," I'm really talking about my development since none of the others in IT are interested in coding. Our software engineers have a workflow comprised of countless services; for my projects, I wanted something cleaner, faster, better integrated, easier to use.
Installation is easy: install a single package, and boom, you're done. Administration is similarly easy.
GitLab's components are developed with each other in mind. Integrations aren't developed as an afterthought or left for community contributors; everything is done right out of the box.
GitLab CI is an absolute joy to work with. I've been able to put together CI/CD pipelines for my software projects - something our software engineers have never done using Jenkins.
I don't like that some of GitLab's best functionality, like static code analysis, is locked up in the highest-level price tier, which seems to be priced for the absolute largest of companies. Something like that isn't optional for smaller businesses, and reserving that functionality makes it *not* an end-to-end product.
Code repositories and version tracking
GitLab ensures our code is safe and secure, everything is version tracked, we can easily collaborate with other colleagues and allows for a good QA environment before launch.
GitLab allows users to easily store their code projects and files in a safe and secure environment, allowing easy collaboration amongst users.
You can import repositories from other Git tools (such as GitHub) with ease, GitLab also imports any version history and accompanying branches.
The ability to make certain repositories private is excellent, most similar git systems charge extra for this service.
The user-interface, though clean and responsive, can be hard to use and master. Especially for new users, training is definitely required.
The integration with interfacing tools is lacking, most systems (such as GitKraken) require a premium license to connect with GitLab.
User management can be complicated, as the user interface isn't particularly clear here, and the different levels of access aren't clearly identified.
Great platform to host your project!
Overall, GitLab is a good for development. Most commonly used features such as MR and code review work very well on GitLab. The best feature on GitLab is CI/CD, it has everything you need to build an automated pipeline, from build agents to container registry.
However, the exploration feature is not as robust as other services and there is still a lot of rooms for improvement.
GitLab CI is great. The GitLab CI/CD language allows us to build complex pipelines easily, pipeline's configs are stored in the repository as well, so we can manage everything in one place. GitLab also has built-in Docker registry. We have both our build pipeline and our images hosted on GitLab.
The pricing is also flexible, I recommend it for both startup and large enterprises.
Explore Projects feature can be better, it would be more useful if we have a filter to select projects by technologies.
Should support templates on the job level, so it can be reused between multiple environments.
Lack of integration: there are not many 3rd party services that integrate with GitLab for now.
The Best DevOps Platform
Overall, GitLab is an excellent program for freelancers. It's really simple to use, simple to administrate and offers all that users need for developing. And if users implement it in the correct way it will speed up their development effectively. Adding more to this, it provides excellent ways to manage git repositories on a centralized secure server.
Project operation: Using GitLab provides the user with complete control over their projects. Users can easily follow up activities assigned to their respective partners. Additionally, the program gives you the advantage to have members across the borders as well, hence it is pretty useful and comes in handy when the work is beyond the borders.
Easy to use: GitLab is easy to lean and very easy to use the software as it helps in creating a project by giving instructions from the beginning. The tutorial mode is extremely helpful and because of that no experience or expertise is required to exhaust all the features offered by GitLab.
Contact Support: Although GitLab provides a good platform for its users, unfortunately, their contact section is poor. Users are unable to recover if they face any problem as the administration is limited. Administration can only be at your service if you own the premium version.
Complicated: Although Gitlab is easy to learn when it comes to the menu users tend to feel as if they are lost in some sort of maze. The menu is pretty much clunky because of this some of its users are unable to use GitLab to its full potential. Additionally, the efficiency of users is reduced to a great extent when they wish to search for aspects because it consumes time and energy.
One stop shop for planning, development, and operations
Making it easier to build quality into the software development lifecycle without sacrificing speed. Let the computers do the heavy lifting of building and testing the changes. Bake in DevOps best practices by default.
Integration of CI/CD and Kubernetes for easily developing and running custom apps. Fantastic collaboration features like discussions, visual diffing. Some of this stuff you don't even get on desktop apps that charge big bucks. Frequent updates that inch its capability and usability forward. Good documentation. Wonderful community, welcoming atmosphere, pleasant to work with all the employees I've encountered.
Sometimes things break. When things are broken, sometimes it can take some time to be fixed, if you're not willing or able to fix it yourself. One of the consequences of such broad scope and feature development velocity. It would be advisable to keep another copy installed separately for testing updates before applying them to the live edition, if your IT has the capacity to do so.
Powerful tool - if you know how to use it!
GitLab is the code versioning system that our company uses on a daily basis. We found useful to have a fine-grained authorization management for your users/developers, that made it easier for us to ensure the only the right people can see the right things. We also use the "organisation" feature to have all our developers in the same place with the right access.
The products has plenty of features, as well as supporting all the basic Git operations/merge requests, you are given a wide choice of CI pipelines you can set up from within the project. Need more? Integrations with metrics, error tracking, kubernetes, snippets and more.
I never had any problem so far, it's stable and always up.
The major issue for me is that these features are advanced, and if you want to use the repository as just that, you find yourself overwhelmed with loads of choices that you don't really need. Therefore, sometimes I find it hard to look for a button which should be the most visible element on the screen. Additionally, I found the arrangement of information in the "merge request" screen a bit counterintuitive compared with similar services.
A complete tool to store your projects and configure your CI/CD
I have great thoughts about GitLab my experience has been really good. I was really impressed when I started working with it and configured the first project there. I definitely recommend GitLab to anyone that wants to start a new project and doesn't want to use too many tools, GitLab has everything that you need to start.
I started using GitLab for an external project and I like the following:
1) Easy to work with and auto explanatory. Creating/configuring a new repository is really easy.
2) Great CI/CD implementation. Having the repository with built-in CI/CD is really convenient, you can have everything related to the build and deployment process saved along with your code. I have used bamboo and I really appreciate this feature, it might have its problems but it is really useful.
3) Unlimited private docker registry, you can have your own private registry for free. I cannot express how useful this is.
4) In order to help with the CI/CD process it allows the creation of tokens with access restrictions (read only), so you can use these tokens to download your code or your docker containers without having to provide your personal credentials.
5) It has its own task manager
6) It has free agents that are in charge of executing your builds/deploys so you don't have to provide your own resources.
1) Configuring build variables is really messy and it is not an ideal implementation. I haven't found a way to set different values for them depending on the branch, so configuring different environments is not too easy
2) Even though having your code with CI/CD is really convenient, it has some drawbacks. If you have an established continuous deployment process that you repeat in many projects and you want to change it (maybe a fix it or improve it) you will have to add that change to all your repositories and all the branches that you want to deploy. So it is a really good feature but it is not too flexible
3) The task manager is messy, and I didn't find a way to have a shared board.
4) It does not have too many software integrations, as I mentioned before I have used bamboo and I really like their integration with other software
Gitlab: A Feature-full alternative to Github
We are utilizing gitlab to handle our code versioning and our continous integration and delivery pipeline. This includes our whole workflow from writting code to building it, testing it and deploying it to production.
- Excellent UI that is easy to understand: many of our developers are migrating for the first time from other software (github, bitbucket) and a constant comment is that the ui is intuitive and easy to understand compared to previous software. The transition is always smooth.
- Feature-full product: Gitlab offers a variety of features that I have found to be excellent and of high quality. The code-review process in gitlab is always smooth with the ability to resolve or re-open discussions, address specific comments or the whole of the discussion, the ability to suggest and even apply and commit code from the ui is also a huge plus. The IDE is decent and the file editor is also decent. The CI/CD integration with gitlab runners is smooth, the notification system is great. I get an email whenever a test fails. All from the gitlab ecosystem, i do not need to go to circleCi or some other provider for all of this, which allows the ui and experience to be consistent.
At this very moment there is no feature or issue that I have found to be detrimental to my experience.
GitLab is the best for its CI
GitLab CI is by far the most valuable feature of GitLab. Travis CI was the first one to offer a YAML-file based build system - but it's GitLab CI to make pipelines very flexible and expressive. While Travis was okay for most popular languages in open source projects. GitLab made it possible to run enterprise-grade pipelines with many stages, each having multiple simultaneous jobs. This, plus git repository, Docker registry, and several other tools, making it a complete solution - starting from an early development cycle, through build, to deployment and monitoring thereof.
Several pages perform bad, e.g. pipelines list in big projects. Some pages don't have search and sorting. These are minor issues though.
Great Open Source Software!
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.
Great software wit a minimal but efficient design but can definitely use improvements
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%.
Best Value Suite of Software Development Tools
Gitlab has an extremely robust free tier with tools that go far beyond simple source/version control. We use the Gitlab CI/CD pipeline runner extensively, allowing us to not only use Gitlab for source, but also for our deployment/build pipeline. Gitlab also has the ability to manage Kubernetes clusters from the suite, which is super helpful. We also extensively use the issue board for tracking scrum issues, which includes time estimates. Gitlab used to be most popular for offering free private repos, and it still does, but these other free features make it an absolute home run. We use Gitlab for every project because of how great it's been.
The pipeline runner can occasionally be a bit buggy sometimes, but nothing critical. For example, if you prematurely stop one pipeline and immediately start another, it can take 10 minutes for the new pipeline to start for some reason. Also, the time tracking on the issue board does not automatically put the sum at the top of the column, which I find annoying - we built a small gitlab api integration to pull that info for us. They have been updating this feature recently, though, so it may be solved soon.