Besoin de Javascript pour mettre en forme cette page (maths, code source et commentaires).
Github avec Windows
Lancer le diaporama
1. Github
1.1. Introduction
http://github.com plateforme de collaboration pour développeurs
2. Github
2.1. Introduction
Quelques équivalents libres :
3. Pour lancer les programmes
En vue de travailler sur un dépôt local
Clic-droit sur le dossier ou répertoire du projet,
choisir Git-GUI
ou Git-Bash
.
En vue de configurer Git-GUI
ou Git-Bash
:
Clic-droit sur n’importe quel dossier ou répertoire,
choisir Git-GUI
ou Git-Bash
.
Ouvrir le Menu démarrer
puis trouver Git
dans Tous les
programmes
.
4. Authentification et chiffrage
Protocole SSH de cryptographie
assymétrique .
Pas le seul possible avec Github.
Authentification
Chiffrage
Clef publique et clef privée avec l’algorithme
RSA
Créé en 1977.
Très très utilisé encore de nos jours.
5. Générer une clef avec Git-GUI
Ouvrir Git-GUI
sans forcément viser un dépôt local.
Notez que les fichiers contenant ces clefs se situent dans votre répertoire
personnel (~
avec Git-Bash), dans .ssh
.
Reste à enregistrer cette clef publique (copier-coller) dans
http://github.com .
6. Fournir la clef à Github
Accéder aux clefs de votre compte :
Réglages du compte
(outils en haut à droite)
SSH keys
(milieu de la colonne à gauche)
Ajouter une clef :
Add SSH key
(en haut à droite)
Title
: poste XX de la salle 112
Coller la clef qui a été générée puis copiée depuis Git-GUI.
Github demande une confirmation de votre identité (mot de passe).
Toute puissance de celui qui a la clef privée correspondante.
7. Conf de la connexion
Git-GUI et Git-Bash, interfaces à un même programme :
configurer l’un permet de configurer l’autre,
ici, on configure Git-GUI en lançant Git-Bash et en y tapant :
git config --global http.proxy 10.144.40.226:3128
où 10.144.40.226
est l’adresse IP du proxy,
et 3128
le port usuel des proxies.
Suivant la configuration de votre réseau, il faudra changer ces paramètres,
voire effectuer d’autres tâches de configuration.
8. Topologie des dépôts
8.1. Introduction
Deux schémas suivants : topologie conseillée.
Topologie : forme du réseau, qui voit qui…
(voir
ici ),
totalement décentralisée,
avec dépôt principal, dépôts annexes (soulager principal, intégration
continue…),
avec lieutenants,
…
1er schéma : créer et référencer les dépôts.
2ème schéma : envoyer du code d’un dépôt à un autre.
9. Topologie des dépôts
9.1. Créations
10. Topologie des dépôts
clone
depuis la fenêtre de démarrage de Git-GUI
,
crée par défaut la référence origin
,
qui pointe vers le dépôt distant d’origine.
fork
depuis http://github.com en cliquant sur le bouton fork
de la page
du dépôt à forker .
11. Topologie des dépôts
remote
en ligne de commande (Git-Bash) :
git remote add principal git@github.com:pseudo/projet.git
avec interface graphique (Git-GUI) :
Dépot distant
, Ajouter…
,
nom
: principal
,
emplacement
: au choix entre
HTTP : https://github.com/pseudo/projet.git
SSH : git@github.com:pseudo/projet.git
Git Read-Only : git://github.com/pseude/projet.git
cocher Ne rien faire
.
12. Topologie des dépôts
12.1. Communications
13. Topologie des dépôts
13.1. Communications
push
permet de pousser les commits du dépôt local vers le dépot en ligne.
Dépôt distant
, Pousser
,
les réglages par défaut conviennent souvent car on pousse souvent vers
origin
.
pull
n’est pas implémenté sur Git-GUI
, on l’ajoute en outil :
Outils
, Ajouter…
,
nom
: recup XXXXX
, où XXXXX est soit origin , soit principal ,
commande
: git pull XXXXX master
(idem).
14. Topologie des dépôts
14.1. Communications
Une pull request
se fait depuis le dépôt d’un codeur pour signaler au
mainteneur qu’il y a du code à fusionner (simple clic sur un bouton, onglet
commits
).
Chaque pull request
apparaît dans la page du dépôt du mainteneur :
comme une pull request à fusionner (pull
ou merge
),
comme une issue (chose à faire, à discuter).
15. Collaborer !
Différents scénarii pour l’échange de code :
en partant du mainteneur :
elle commite un changement,
le pousse,
puis les autres le récupèrent.
en partant d’un développeur :
elle commite un changement,
le pousse,
requiert une fusion,
le mainteneur fusionne,
puis les autres le récupèrent (devs et mainteneur).
16. Collaborer !
Remarques :
On se restreint à cette topologie pour l’instant :
pas de partage de code entre simples codeurs,
possible de changer de mainteneur (références vers dépôts distants).
Tout se passe bien si on travaille sur des parties distinctes des fichiers.
Sinon, des conflits apparaissent (et tout se passera bien aussi).
Ne pas inclure dans le dépôt des fichiers non source (Thumbs.db
).
git
peut les ignorer ,
ou vous pouvez empêcher Windows de les créer :
Outils, Options des dossiers, Affichage,
Ne pas mettre les miniatures en cache.
17. Collaborer, mais en bonne entente
18. Pousser vers un dépôt vide
Clic-droit sur le dossier ou répertoire du projet, choisir Git-GUI
.
Menu Dépôt distant
, Ajouter…
Nom : depot_github
Emplacement : git@github.com:User/nom_projet.git (bouton SSH)
Cocher : Ne rien faire d’autre maintenant
Menu Dépôt distant
, Pousser…
Branche distante : depot_github
Taper yes après avoir vérifier l’IP et l’empreinte (fingerprint )
Vérifier l’arrivée du code sur Github.
19. Cloner un dépôt existant
Clic-droit sur le dossier ou répertoire du projet, choisir Git-GUI
.
Choisir Cloner un dépôt existant
.
Emplacement source : git@github.com:pseudo/projet.git
Répertoire cible : src
Vérifier l’arrivée du code dans le répertoire src .
Christophe Gragnic, le 26/09/2014, 15h05'58".
Page générée le 27/05/2021, 09h06'59" (
source ).