1. Jira
Jira est maintenant un système de gestion de projets développé par Atlassian.
1.1. Création d’un projet
Se connecter (ou créer un compte) :
Puis démarrer la création d’un nouveau projet :
On choisit le modèle Kanban :
Puis le type de projet :
On précise le nom du projet (et sa clé) :
On connecte le projet à Bitbucket (et éventuellement Confluence) :
Il est possible d’intégrer GitHub (ou GitLab) à la place de Bitbucket. |
1.2. Accès à un projet Kanban
La barre latérale :
La vue du tableau :
Les informations sur le projet :
Les différents types de tickets :
Le workflow par défaut :
Il est possible d’automatiser le flux :
1.3. Intégration
Jira est capable de se connecter à des outils de développement compatibles pour offrir des fonctionnalités intéressantes.
On utilisera soit :
-
Bitbucket Cloud
-
GitHub
2. Bitbucket Cloud
Bitbucket est un service web d’hébergement et de gestion de développement logiciel utilisant le logiciel de gestion de versions Git. Bitbucket est gratuit pour les particuliers et les petites équipes comptant jusqu’à 5 utilisateurs, avec des référentiels publics et privés illimités.
L’accès initial à Bitbucket :
On clone le dépôt :
$ git clone https://btssn-avignon-admin@bitbucket.org/btssn-avignon/miniprojet1-team1.git Clonage dans 'miniprojet1-team1'... Password for 'https://btssn-avignon-admin@bitbucket.org': warning: Vous semblez avoir cloné un dépôt vide. $ cd miniprojet1-team1/ $ git status Sur la branche master Aucun commit rien à valider (créez/copiez des fichiers et utilisez "git add" pour les suivre) $ git remote -v origin https://btssn-avignon-admin@bitbucket.org/btssn-avignon/miniprojet1-team1.git (fetch) origin https://btssn-avignon-admin@bitbucket.org/btssn-avignon/miniprojet1-team1.git (push) $ git push -u origin master
Si le dépôt local existe déjà, on peut le relier au dépôt distant : $ git remote add origin https://btssn-avignon-admin@bitbucket.org/btssn-avignon/miniprojet1-team1.git Si besoin, on renomme la branche $ git branch -M main |
On peut configurer Git localement :
$ git config --local user.name "vaira" $ git config --local user.email "vaira@lasalle84.org" $ cat .git/config ...
On peut installer les extensions git-flow
:
$ sudo apt install git-flow $ git flow help usage: git flow <subcommand> Available subcommands are: init Initialize a new git repo with support for the branching model. feature Manage your feature branches. bugfix Manage your bugfix branches. release Manage your release branches. hotfix Manage your hotfix branches. support Manage your support branches. version Shows version information. config Manage your git-flow configuration. log Show log deviating from base branch. Try 'git flow <subcommand> help' for details.
On initialise le dépôt avec la prise en charge du modèle de branchement Gitflow :
$ git flow init No branches exist yet. Base branches must be created now. Branch name for production releases: [master] Branch name for "next release" development: [develop] How to name your supporting branch prefixes? Feature branches? [feature/] Bugfix branches? [bugfix/] Release branches? [release/] Hotfix branches? [hotfix/] Support branches? [support/] Version tag prefix? [] Hooks and filters directory? [$HOME/jira/miniprojet1-team1/.git/hooks] $ git push -u origin develop Décompte des objets: 2, fait. Écriture des objets: 100% (2/2), 160 bytes | 160.00 KiB/s, fait. Total 2 (delta 0), reused 0 (delta 0) To https://bitbucket.org/btssn-avignon/miniprojet1-team1.git * [new branch] develop -> develop $ git ls-remote From https://btssn-avignon-admin@bitbucket.org/btssn-avignon/miniprojet1-team1.git ddc49adcf578dea85148ff5aa146033b6162e8a6 HEAD ddc49adcf578dea85148ff5aa146033b6162e8a6 refs/heads/develop ddc49adcf578dea85148ff5aa146033b6162e8a6 refs/heads/master
Dans les détails du projet, on définit la branche principale (ici master
) :
Dans les modèles de branches, on définit la branche de développement (ici develop
) :
On obtient :
3. GitHub
Liens :
On obtient :
Configuration :
On clone le dépôt :
$ git clone git@github.com:btssn-lasalle84/mp1-team0.git $ cd mp1-team0/ $ echo "# mp1-team0" >> README.md $ git add README.md $ git commit -m "Ajout README.md" $ git branch -M main $ git push -u origin main
On installe des extensions git-flow
:
$ sudo apt install git-flow
On initialise le dépôt Git avec la prise en charge du modèle de branchement Gitflow :
$ git flow init Which branch should be used for bringing forth production releases? - main Branch name for production releases: [main] Branch name for "next release" development: [develop] How to name your supporting branch prefixes? Feature branches? [feature/] Bugfix branches? [bugfix/] Release branches? [release/] Hotfix branches? [hotfix/] Support branches? [support/] Version tag prefix? [] Hooks and filters directory? [/home/tv/Documents/jira/mp1-team0/.git/hooks] $ git push -u origin develop Total 0 (delta 0), reused 0 (delta 0) remote: remote: Create a pull request for 'develop' on GitHub by visiting: remote: https://github.com/btssn-lasalle84/mp1-team0/pull/new/develop remote: To github.com:btssn-lasalle84/mp1-team0.git * [new branch] develop -> develop La branche 'develop' est paramétrée pour suivre la branche distante 'develop' depuis 'origin'.
4. Visual Studio Code
Visual Studio Code (un des IDE les plus utilisés actuellement) intégre la gestion du contrôle de source (SCM) et inclut par défaut la prise en charge de Git.
Installation de Visual Studio Code :
Liens :
Le contrôle de source (SCM) :
Il existe de nombreuses extensions pour faciliter l’utilisation de Git dont Git Extension Pack qui comprend :
Et quelques autres :
Et pour gitflow :
Et pour Jira/Bitbucket :
5. Les outils graphiques
Il existe de nombreuses interfaces graphiques permettant de gérer des projets Git.
En standard :
-
une interface web avec GitWeb
-
une interface de visualisation détaillée et graphique avec
gitk
Il existe également de nombreuses autres applications :
-
qgit propose des outils supplémentaires par rapport à
gitk
; -
Giggle : une interface en GTK+ ;
-
GitExtensions : un client Git graphique pour Windows © ;
-
TortoiseGit : logiciel libre pour Windows reprenant les éléments d’interface de
TortoiseSVN
(un classique) ; -
…
-
SourceTree : un logiciel propriétaire gratuit pour Windows © et macOS © édité par Atlassian ;
-
GitEye : un client graphique pour Windows ©, macOS © et Linux
$ cd ~/Téléchargements/ $ wget -c https://www.collab.net/sites/default/files/downloads/GitEye-2.2.0-linux.x86_64.zip $ mkdir /tmp/GitEye $ unzip -d /tmp/GitEye ~/Téléchargements/GitEye-2.2.0-linux.x86_64.zip $ sudo chown -R root:root /tmp/GitEye $ sudo mv /tmp/GitEye /opt/GitEye $ sudo ln -s /opt/GitEye/GitEye /usr/local/bin/GitEye $ GitEye