Skip to content

Commit

Permalink
Mise à jour 2024 12 06
Browse files Browse the repository at this point in the history
  • Loading branch information
vicpsl committed Dec 6, 2023
1 parent 16ea06a commit 062b252
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 23 deletions.
12 changes: 10 additions & 2 deletions commandes_memo.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# 1. Commandes de bases de manipulation de dossiers / fichiers :

- **Créer un dossier / répertoire** : `mkdir [nom du dossier]`
- **Lire un répertoire** : `ls -la` (pour lister également les fichiers cachés .git / .gitignore)
- **Lire un répertoire** : `ls -la` (-la pour lister également les fichiers cachés .git / .gitignore)
- **Se déplacer dans un dossier** : `cd [adresse du dossier]` (Ex. `cd child` si l'on souhaite accéder au dossier 'child' du dossier parent où l'on se situe actuellement)
- **Créer / éditer un fichier** : `touch [nom du fichier]` (créer un fichier vide sans ouvrir d'éditeur)
- **Créer / modifier un fichier** : `nano [nom du fichier]` (ctrl+x pour quitter, sauvegarder avec O ou Y selon la langue + Enter)
Expand All @@ -24,7 +24,7 @@ Suppression : attention à la suppression récursive du type rm -r ou tous les d
- **Créer une branche** : `git branch [nom de la branche]`
- **Se déplacer dans une branche** : `git checkout [nom de la branche]`
- **Créer et se déplacer sur une nouvelle branche en même temps** : `git checkout -b [nom de la branche]`
- **Fusionner une branche** : `git merge [branche dont on veut les modifications]` (on fusionne toujours depuis la branche réceptrice, celle sur laquelle on veut continuer de travailler ensuite)
- **Fusionner une branche** : `git merge [branche dont on veut les modifications]` (on fusionne généralement depuis la branche réceptrice, celle sur laquelle on veut continuer de travailler ensuite)

# 3. Créer un dépôt Github à partir d'un dépôt local

Expand Down Expand Up @@ -77,6 +77,7 @@ Copie distante (et donc locale via un clone) avec possibilité de mise à jour d
- `git pull --all` : **/!\\** mettre à jour immédiatement *toutes les branches liées* du dépôt local
- `git push -u origin master` (voir 3) : **premier** push de synchronisation d'une branche locale vers le dépôt distant
- `git push` (voir 3) : push de synchronisation d'une branche locale vers le dépôt distant
- `git fetch --all -p`: mets à jour les références locales vers les branches distantes (ex: si une branche distante a été supprimée, la commande va supprimer cette référence localement) sans toucher la branche locale

# 7. **Pulls Requests** : mise à jour d'un dépôt distant entre branches<sup>1</sup> ou entre un original (*upstream*) et son fork :
<sup>1</sup> Comme un "merge" entre branches locales mais sur le dépôt distant.
Expand Down Expand Up @@ -105,6 +106,13 @@ Git ne vous autorisera pas à supprimer la branche sur laquelle vous êtes, il f
- **Supprimer dépôt distant** : `git push origin --delete [nom branche distante]`
- **Forcer la suppression d'une branche non propre** (non *pushée* ou *mergée*) : remplacer -d par -D

Création d'"alias" (noms de commandes personnalisées) :
Pour créer un alias accessible dans tous vos repos :
- Sur le modèle : `git config --global alias.[nom de votre alias]adog "[commande git]"`
- Exemple intéressant : git config --global alias.adog "log --all --decorate --oneline --graph"`
Pour lancer la commande : un simple `git adog` suffit désormais :

![](images/adog.png)



Expand Down
7 changes: 4 additions & 3 deletions cours-0/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3067,20 +3067,21 @@ <h1 id="introduction-à-git">Introduction à Git</h1>
<hr />
<h1 id="contenus-du-cours">Contenus du cours</h1>
<ul>
<li>5 cours de 2h
<li>4 cours de 2h
<ul>
<li>Git, commandes de base</li>
<li>GitHub: Collaborer et faire de l’open-source / data</li>
<li>Organisation de projet, bonnes pratiques</li>
<li>eScriptorium</li>
</ul></li>
</ul>
<hr />
<h1 id="devoir">Devoir</h1>
<ul>
<li>Création de set de données HTR en équipes sous la forme d’un dépôt GitHub.</li>
<li>Modalités : https://docs.google.com/document/d/1JIpAUSxpJg3DwjQrpogxDnAdIeMin-UDr1-U9ERvq3Y/edit#</li>
<li>En équipe de 3 à 4 personnes</li>
<li>Date de rendu : 31 mars 2023</li>
<li>4 groupes de 4 personnes</li>
<li>Date de rendu : Février - Mars 2024 TBC</li>
</ul>
</div>
</div>
Expand Down
7 changes: 4 additions & 3 deletions cours-0/slides.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,17 @@ Victor Boby

# Contenus du cours

- 5 cours de 2h
- 4 cours de 2h
- Git, commandes de base
- GitHub: Collaborer et faire de l'open-source / data
- Organisation de projet, bonnes pratiques
- eScriptorium

---

# Devoir

- Création de set de données HTR en équipes sous la forme d'un dépôt GitHub.
- Modalités : https://docs.google.com/document/d/1JIpAUSxpJg3DwjQrpogxDnAdIeMin-UDr1-U9ERvq3Y/edit#
- En équipe de 3 à 4 personnes
- Date de rendu : 31 mars 2023
- 4 groupes de 4 personnes
- Date de rendu : Février - Mars 2024 TBC
16 changes: 8 additions & 8 deletions cours-1/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3060,8 +3060,8 @@
<li><a href="#bis.-problèmes-combinés">2bis. Problèmes combinés</a></li>
<li><a href="#problèmes">3. Problème(s)</a></li>
<li><a href="#git-un-outil-de-versionnage">4. Git : un outil de versionnage</a></li>
<li><a href="#git-principes-généraux">5. Git : Principes généraux</a></li>
<li><a href="#git-principes-généraux-1">6. Git : Principes généraux</a></li>
<li><a href="#git-principes-généraux-le-.git">5. Git : Principes généraux (le .git)</a></li>
<li><a href="#git-principes-généraux-les-états-des-fichiers">6. Git : Principes généraux (les états des fichiers)</a></li>
<li><a href="#git-commandes-principales">7. Git : Commandes principales</a></li>
<li><a href="#changer-les-couleurs-si-difficiles-à-lire">8. Changer les couleurs si difficiles à lire</a></li>
<li><a href="#importance-des-messages">9. Importance des messages</a></li>
Expand Down Expand Up @@ -3105,16 +3105,16 @@ <h1 id="git-un-outil-de-versionnage">4. Git : un outil de versionnage</h1>
<ul>
<li>Date d’avril 2005, créé par le créateur du noyau Linux Linus Torvalds et par Junio Hamano</li>
<li>Sous licence libre GNU GPLv2</li>
<li>Version 2 actuellement</li>
<li>Version 2.43 actuellement (novembre 2023)</li>
<li>Autres outils :
<ul>
<li>connus : CVS, SVN (Subversion)<br />
<li>connus : <a href="https://fr.wikipedia.org/wiki/Concurrent_versions_system">CVS</a>, <a href="https://fr.wikipedia.org/wiki/Apache_Subversion">SVN (Subversion)</a><br />
</li>
<li>moins connus : Mercurial, Bazaar</li>
</ul></li>
</ul>
<hr />
<h1 id="git-principes-généraux">5. Git : Principes généraux</h1>
<h1 id="git-principes-généraux-le-.git">5. Git : Principes généraux (le .git)</h1>
<ul>
<li>Travail dans un <em>repository</em> (dépôt en français) == un dossier
<ul>
Expand All @@ -3129,7 +3129,7 @@ <h1 id="git-principes-généraux">5. Git : Principes généraux</h1>
</ul></li>
</ul>
<hr />
<h1 id="git-principes-généraux-1">6. Git : Principes généraux</h1>
<h1 id="git-principes-généraux-les-états-des-fichiers">6. Git : Principes généraux (les états des fichiers)</h1>
<p>On distingue trois “états” des fichiers</p>
<ul>
<li>un état de travail : le fichier a subi des modifications, mais nous ne l’avons pas encore ajouté (<code>add</code>) à un futur commit</li>
Expand Down Expand Up @@ -3180,10 +3180,10 @@ <h1 id="par-conséquent-premieres-bonnes-pratiques">11. Par conséquent (premier
<li>base de données</li>
<li>les fichiers binaires, journaux, résultats de suivi ou données de diagnostic<br />
Ce sont des sorties de votre code, pas le code source lui-même.<br />
Partagez ce type de ficheirs de suivi avec votre équipe via des outils de suivi/partage de fichiers.</li>
Partagez ce type de fichiers de suivi avec votre équipe via des outils de suivi/partage de fichiers, non pas un dépôt de versionnage.</li>
</ul></li>
<li>On évite d’inclure les fichiers périphériques au code (bibliothèques Python, etc) :<br />
Ces dépendances sont souvent listées dans un fichier texte, et on les installe séparemment.<br />
Ces dépendances sont souvent listées dans un fichier texte, et elles sont installées séparemment.<br />
Vous avez peut-être déjà croisé la commande <code>pip install -r requirements.txt</code> ?</li>
</ul>
<hr />
Expand Down
12 changes: 6 additions & 6 deletions cours-1/slides.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,14 @@ h3 { font-size: 1.2em; margin:0 0; padding:0 0; }

- Date d'avril 2005, créé par le créateur du noyau Linux Linus Torvalds et par Junio Hamano
- Sous licence libre GNU GPLv2
- Version 2 actuellement
- Version 2.43 actuellement (novembre 2023)
- Autres outils :
- connus : CVS, SVN (Subversion)
- connus : [CVS](https://fr.wikipedia.org/wiki/Concurrent_versions_system), [SVN (Subversion)](https://fr.wikipedia.org/wiki/Apache_Subversion)
- moins connus : Mercurial, Bazaar

---

# 5. Git : Principes généraux
# 5. Git : Principes généraux (le .git)

- Travail dans un *repository* (dépôt en français) == un dossier
- Il contient un dossier (souvent caché) `.git` qui contient toutes les archives enregistrées
Expand All @@ -66,7 +66,7 @@ h3 { font-size: 1.2em; margin:0 0; padding:0 0; }

---

# 6. Git : Principes généraux
# 6. Git : Principes généraux (les états des fichiers)

On distingue trois "états" des fichiers

Expand Down Expand Up @@ -136,11 +136,11 @@ Il possède d'ailleurs son propre système de compression.
- base de données
- les fichiers binaires, journaux, résultats de suivi ou données de diagnostic
Ce sont des sorties de votre code, pas le code source lui-même.
Partagez ce type de ficheirs de suivi avec votre équipe via des outils de suivi/partage de fichiers.
Partagez ce type de fichiers de suivi avec votre équipe via des outils de suivi/partage de fichiers, non pas un dépôt de versionnage.


- On évite d'inclure les fichiers périphériques au code (bibliothèques Python, etc) :
Ces dépendances sont souvent listées dans un fichier texte, et on les installe séparemment.
Ces dépendances sont souvent listées dans un fichier texte, et elles sont installées séparemment.
Vous avez peut-être déjà croisé la commande `pip install -r requirements.txt` ?

---
Expand Down
3 changes: 2 additions & 1 deletion cours-5/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3124,7 +3124,8 @@ <h1 id="documenter.-1">12. Documenter.</h1>
<hr style="border:2px solid gray">
<h1 id="liens">Liens</h1>
<p><a href="https://github.com/wearehive/project-guidelines">Hive Best Practices https://github.com/wearehive/project-guidelines</a> pour Git</p>
<p><a href="https://code.tutsplus.com/tutorials/top-15-best-practices-for-writing-super-readable-code--net-8118">https://code.tutsplus.com/tutorials/top-15-best-practices-for-writing-super-readable-code–net-8118</a> pour le php</p>
<p><a href="https://pub.towardsai.net/top-16-best-practices-to-use-github-professionally-345f613d5081">16 best practices for github</a></p>
<p><a href="https://www.youtube.com/watch?v=bhlBwnN_Pf4">Conférence de Bridget Almas sur la chaîne YouTube de l’École</a></p>
<p> </p>
<hr style="border:2px solid gray">
</div>
Expand Down

0 comments on commit 062b252

Please sign in to comment.