GitBucket és un sistema de desenvolupament col·laboratiu autohospedado qui s'assembla a serveis com GitHub o GitLab, a més de que compta amb una interfície bastant similar a aquests. GitBucket es posiciona com un marc de desenvolupament per a sistemes per treballar amb repositoris Git. El sistema destaca per la seva fàcil instal·lació, la capacitat d'expandir la funcionalitat a través de complements i la compatibilitat amb l'API de GitHub.
GitBucket ve amb un conjunt de característiques d'abast que inclou, suport per GitLFS, problemes, sol·licitud d'extracció, notificacions, sistema de complement, repositoris públics i privats de Git, a més que també es pot integrar fàcilment amb LDAP per a la gestió de comptes i grups. El codi de GitBucket està escrit en Scala i té llicència sota Apache 2.0.
De les principals característiques de GitBucket es destaquen les següents:
- Suport per a dipòsits Git públics i privats amb accés a través d'HTTP i SSH
- Suport de GitLFS
- Interfície per a la navegació de l'repositori amb suport per editar arxius en línia;
- La presència d'un Wiki per a la preparació de documentació
- Interfície per a processar missatges d'error
- Eines per a processar sol·licituds de canvi
- Sistema de notificació per correu electrònic
- Un sistema simple de gestió d'usuaris i grups amb suport per a la integració amb LDAP
- Un sistema de complements amb una col·lecció de complements desenvolupats per membres de la comunitat.
En forma de complements, s'implementen característiques com ara crear notes generals, publicar anuncis, fer còpies de seguretat, mostrar notificacions a l'escriptori, traçar confirmacions, dibuixar AsciiDoc.
Com instal·lar GitBucket en Ubuntu server, Ubuntu desktop o derivats?
Com es va esmentar a l'inici GitBucket és un sistema de desenvolupament col·laboratiu que és autohospedado, de manera que la instal·lació d'aquest està dirigit a servidors, encara que també és possible poder realitzar la instal·lació en versions d'escriptori d'Ubuntu o algun derivat d'aquest.
Només cal tenir en compte que en les instruccions en lloc de posar un domini hauràs de fer servir la IP local a la teva xarxa domèstica, a més has de contemplar la instal·lació addicional de paquets necessaris per llançar un servei web (PHP, Apache, alguna base de dades compatible (MySQL o PostgreSQL). Et puc recomanar que instal Xampp per a Linux o el famós Lamp.
Per realitzar la instal·lació de GitBucket, primer hem de comptar amb el paquet de java instal·lat en el sistema, de manera que si no comptes amb això n'hi ha prou amb executar la següent comanda:
sudo apt-get install default-jdk -y
Ara crearem un nou grup i un usuari per poder executa GitBucket
sudo groupadd -g 555 gitbucketsudo useradd -g gitbucket --no-user-group --home-dir /opt/gitbucket --no-create-home --shell /usr/sbin/nologin --system --uid 555 gitbucket
Fet això, ara anem a descarregar la versió estable més actual que és la versió 4.33 des del següent enllaç o des de la terminal amb wget:
wget https://github.com/gitbucket/gitbucket/releases/download/4.33.0/gitbucket.war
Una vegada que es completi la descàrrega, haurem d'assignar un espai a GitBucket. Per a això anem a teclejar la següent comanda:
mkdir /opt/gitbucket
Ara, només hem de moure l'arxiu descarregat en el directori acabat de crear:
mv gitbucket.war /opt/gitbucket
Ara hem de donar permisos a l'usuari que vam crear perquè pugui treballar sobre el directori creat:
chown -R gitbucket:gitbucket /opt/gitbucket
Ja amb això, crearem un servei en el sistema per a això anem a teclejar:
sudo nano /etc/systemd/system/gitbucket.service
A l'arxiu anem a col·locar el següent:
# GitBucket Service [Unit] Description=Manage Java service [Service] WorkingDirectory=/opt/gitbucket ExecStart=/usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war User=gitbucket Group=gitbucket Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
Guardem amb Ctrl + O i vam sortir amb Ctrl + X i anem carregar de nou tots els serveis amb:
sudo systemctl daemon-reload
I vam habilitar el que vam crear amb:
sudo systemctl start gitbucket sudo systemctl enable gitbucket
Ja amb el servei habilitat i iniciat, hem de connectar la base de dades:
sudo nano /opt/gitbucket/database.conf db { url = "jdbc:h2:${DatabaseHome};MVCC=true" user = "sa" password = "sa" }
I llest amb això ja es podrà accedir a l'servei des del teu domini entrant a l'espai assignat http://tudominio.com:8080 o en una instal·lació local amb localhost: 8080
- Usuari: root
- Contrasenya: root
Finalment es recomana implementar una intermediari inversa, però el procés difereix en Nginx, Apache o Candy. Pots consulta la documentació a l'respecte en el següent enllaç.