Skip to content

Commit

Permalink
Include VSCode instructions in exogit (#447)
Browse files Browse the repository at this point in the history
  • Loading branch information
tomseimandi committed Nov 5, 2023
1 parent 8728352 commit ea9400a
Showing 1 changed file with 43 additions and 22 deletions.
65 changes: 43 additions & 22 deletions content/git/exogit.qmd
Expand Up @@ -43,7 +43,7 @@ du cadavre exquis, qui m'a été soufflée par

Cette partie part du principe que les concepts généraux de `Git` sont
maîtrisés et qu'un environnement de travail fonctionnel avec `Git` est
disponible. Un exemple de tel environnement est le`JupyterLab` du
disponible. Un exemple de tel environnement est le `JupyterLab` ou l'environnement `VSCode` du
`SSPCloud` où une extension
`Git` est pré-installée :

Expand All @@ -67,11 +67,11 @@ de pratiques collaboratives devenues standards dans le domaine de l'_open-source
mais également de plus en plus communes dans les administrations et entreprises
de la _data science_.

Ce chapitre propose d'utiliser l'extension `Git` de `JupyterLab`.
Un tutoriel présentant cette extension est disponible
Ce chapitre propose d'utiliser l' extension `Git` de `JupyterLab` ou de `VSCode`.
Un tutoriel présentant l'extension `JupyterLab` est disponible
[ici](https://annefou.github.io/jupyter_publish/02-git/index.html).
Les principaux IDE disponibles (Visual Studio,
PyCharm, RStudio) présentent des fonctionalités similaires. Il est
Les principaux autres IDE disponibles (PyCharm, RStudio) présentent
des fonctionalités similaires. Il est
tout à fait possible d'en utiliser un autre. `VisualStudio` propose
probablement, à l'heure actuelle, l'ensemble le plus complet.

Expand Down Expand Up @@ -273,7 +273,7 @@ Pour résumer les étapes devraient être les suivantes :
*Settings > Developers Settings > Personal Access Token > Generate a new token > "My bash script" > Expiration "30 days" > cocher juste "repo" > Generate token > Le copier*


2️⃣ Ouvrir un terminal depuis `Jupyter` (par exemple `File > New > Terminal` dans Onyxia).
2️⃣ Ouvrir un terminal depuis `Jupyter` (par exemple `File > New > Terminal`) ou `VSCode` (`Terminal > New Terminal`).

3️⃣ [Optionnel] Taper dans le terminal la commande
qui convient selon votre système d'exploitation pour activer le
Expand All @@ -294,7 +294,7 @@ Il prend la forme suivante

Vous pouvez utiliser l'icone à droite pour copier l'url.

5️⃣ Retournez dans le terminal `Jupyter`. Taper
5️⃣ Retournez dans le Terminal. Taper

```shell
git clone repo_url
Expand Down Expand Up @@ -466,13 +466,21 @@ Il faut dire à `Git` de contrôler les évolutions de chaque fichier



1. Se rendre dans l'extension `Git` de Jupyter. Vous devriez
retrouver un cadre ayant cet aspect
1. Se rendre dans l'extension `Git` de `Jupyter` ou de `VSCode`. Vous devriez
retrouver un cadre ayant cet aspect (à gauche pour `Jupyter` et à droite pour `VSCode`).

::: {#fig-status layout-ncol=2}

![](git-status-ensae.png)

2. En passant votre souris au dessus du `.gitignore`, vous devriez voir
un `+` apparaître. Cliquez dessus.
![](git_vscode_1.png)
:::



2. Sur `Jupyter`, en passant votre souris au dessus du `.gitignore`, vous devriez voir
un `+` apparaître. Cliquez dessus. Sur `VSCode`, un bouton `+` figure à droite du nom
du fichier `.gitignore`.

Si vous aviez privilégié la ligne de commande, ce que vous avez fait est équivalent à :

Expand Down Expand Up @@ -567,14 +575,20 @@ le commit *Update* du 12 janvier et en quoi il se distingue du
<h3 class="alert-heading"><i class="fa-solid fa-pencil"></i> Exercice 5 : Premier commit (enfin !)</h3>
```

Tout se passe dans la partie inférieure de l'interface graphique.
Sur `Jupyter`, tout se passe dans la partie inférieure de l'interface graphique.

![](git-panel-jupyter.png)

Sur `VSCode`, il faut au contraire regarder en haut.

![](git_vscode_2.png)

:one: Entrer le titre `Initial commit` et ajouter une description
`Création du fichier .gitignore : tada :` (sans les espaces autour des `:`).
`: tada :` (sans les espaces) sera converti en emoji :tada: par `Github` quand on voudra
afficher la description du commit[^4].
afficher la description du commit[^4]. Sur `VSCode`, le titre du commit correspond à la
première ligne du message de commit, les lignes suivantes correspondent à la
description.

[^4]: `:XXXXXX:` permet, dans des systèmes qui reposent sur `Markdown`, d'afficher
des emojis. Vous pouvez [trouver une liste ici](https://gist.github.com/rxaviers/7360908)
Expand All @@ -589,8 +603,9 @@ n'êtes pas obligé de suivre cette convention si elle ne vous plaît pas.
il n'a plus de modification à valider. Pour le retrouver dans la liste
des fichiers `Changed`, il faudra le modifier à nouveau

:three: Cliquer sur l'onglet `History`. Votre `commit` apparaît à ce niveau.
Si vous cliquez dessus, vous obtenez des informations sur le `commit`
:three: Sur `Jupyter`, cliquer sur l'onglet `History` ou sur `VSCode` cliquer
sur l'icône `View Git Graph`. Votre `commit` apparaît à ce niveau.
Si vous cliquez dessus, vous obtenez des informations sur le `commit`.

```{=html}
</div>
Expand Down Expand Up @@ -792,10 +807,13 @@ titre du dernier commit. Vous pouvez cliquer dessus pour voir la modification
que vous avez faite.

:seven: Les résultats sont sur le dépôt distant mais ne sont pas sur votre
dossier de travail dans Jupyter. Il faut re-synchroniser votre copie locale
dossier de travail dans `Jupyter` ou `VSCode`. Il faut re-synchroniser votre copie locale
avec le dépôt distant :

* Avec l'interface Jupyter, si cela est possible, appuyez tout simplement sur la petite flèche vers le bas, qui est celle qui a désormais la pastille orange.
* Sur `VSCode`, cliquez simplement sur `... > Pull` à côté du bouton qui permet
de visualiser le graphe Git.
* Avec l'interface `Jupyter`, si cela est possible, appuyez tout simplement sur la petite
flèche vers le bas, qui est celle qui a désormais la pastille orange.
* Si cette flèche n'est pas disponible ou si vous travaillez dans un autre
environnement, vous pouvez utiliser la ligne de
commande et taper
Expand All @@ -808,7 +826,7 @@ Cela signifie : *"git récupère (`pull`) les modifications sur la
branche `main` vers mon dépôt (alias
`origin`)"*

:eight: Regarder, sur JupyterLab, l'onglet `History`. Cliquez sur le
:eight: Regarder à nouveau l'historique des commits. Cliquez sur le
dernier commit et affichez les changements sur le fichier. Vous pouvez
remarquer la finesse du contrôle de version : `Git` détecte au sein de
la première ligne de votre texte que vous avez mis des majuscules
Expand Down Expand Up @@ -881,7 +899,9 @@ Il faut **absolument** bannir les usages de `push force` qui peuvent déstabilis
Avec l'interface graphique de JupyterLab, cliquez sur `Current Branch - Main`
puis sur le bouton `New Branch`. Rentrez `issue-1` comme nom de branche
(la branche doit être créée depuis `main`, ce qui est normalement le choix
par défaut) et cliquez sur `Create Branch`
par défaut) et cliquez sur `Create Branch`.

Sur VSCode, cliquez sur `... > Branch > Create Branch` et entrez le nom `issue-1`.

Si vous n'utilisez pas l'interface graphique mais la ligne de commande, la
manière équivalente de faire est[^4]
Expand Down Expand Up @@ -914,7 +934,7 @@ pousser les modifications locales.

Cela peut être fait avec l'interface
de `JupyterLab` grâce au bouton avec une flêche montante (il doit apparaître
en orange maintenant).
en orange maintenant). Sur `VSCode`, cliquez sur le bouton `Publish Branch`.

Sinon, si vous utilisez la ligne de commande, vous devrez taper

Expand Down Expand Up @@ -944,8 +964,9 @@ En attendant, vous avez créé un lien entre l'*issue* et la *pull request*
Au passage, vous pouvez ajouter le label `Markdown` sur la droite.

:six: En local, retourner sur `main`. Dans l'interface `Jupyter`, il suffit
de cliquer sur `main` dans la liste des branches. Si vous êtes
en ligne de commande, il faut faire
de cliquer sur `main` dans la liste des branches. Sur `VSCode`, la liste des branches
apparaît en cliquant sur le nom de la branche actuelle (`issue-1` en théorie à ce stade).
Si vous êtes en ligne de commande, il faut faire

~~~shell
git checkout main
Expand Down

0 comments on commit ea9400a

Please sign in to comment.