Gitlab help in so many way when writing code for a project, that once you tried it you never go back.
Self-hosted. Containerized. Live and cold backup automated.
Pros
I know where my code is
All Gitlab functions help me while writing
I can found back some code block very fast
Need
My code is my property and I wanted to have a 100% trust in my code management system. Version control, Branching, Tracking, all this features make my work more efficient.
Cons
I'm in charge of the maintenance
Gitlab good administration take some time to learn
Results
My own gitlab instance available 24/7
I manage rights and I'm sure my code is not available to outsiders
The client wants to rely on this service so emails can go through and alert teams on time. The service must be available or alert people in case of failure.
Merge similar scripts or scripts acting on similar actions. Comments lines and function to understand code block. Create easily readable logs. Push failure warning to IT group. Use modern auth and token.