README staged

This commit is contained in:
vincent_b
2024-11-20 14:27:49 +00:00
parent 7f3e85d40e
commit 5e69cdc7b6

187
README.md
View File

@@ -128,27 +128,43 @@ PAGE URL ==
. . . . . .
# OUVRIR ou CLONER # OUVRIR ou CLONER
### CHOIX - depuis gitLab/Hub : Edit avec l'IDE (le plus simple)
DO .... DO ....
RETOUR AU PROJET RETOUR AU PROJET
--> Code (boutton bleu) --> Edit ( à côté du boutton bleu )
--> Ouvrir avec.... --> **Web IDE**
---> Va ouvrir un IDE...
## Cloner le projet en entier (travailler en local)
/SI/ on veut cloner+ouvrir le projet en local...
( avec vscode/codium/IDE installé sur l'ordinateur )
Gitlab va proposer de clonner le projet avant de l'ouvrir avec ....
## depuis le terminal - Ouvir 1 fichier... en ligne sur l'IDE embarquée de GitLab...
On peut également cloner le projet depuis le terminal avec : /SI/ on veut travailler en ligne (IDE GitLab)...
/SI/ on veut le faire manuellement On peut ouvrir un fichier spécifique
EX/ https://gitlab.com/bonnebulle/plain-html-redo/-/blob/main/README.md
--> Edit (boutton bleu)
--> Open in Web IDE...
### CHOIX - depuis le terminal (local)
On peut également cloner le projet depuis le terminal avec :
> git clone https://gitlab.com/bonnebulle/plain-html-redo.git
#### détail - Terminal commandes (pwd/ls/cd)
/SI/ on veut le faire depuis Git/Labhub
DO .... DO ....
RETOUR AU PROJET RETOUR AU PROJET
--> Code (boutton bleu) --> Code (boutton bleu)
--> Clone with HTTPS (copy https.....monprojet.git) --> Clone with HTTPS (copy https.....monprojet.git)
Dans le terminal aller dans un dossier ou télécharger le projet Dans le terminal aller dans un dossier ou télécharger le projet
. . . . . .
Chemin actuel Chemin actuel
@@ -174,19 +190,27 @@ lister fichiers clonés
Localiser le chemin du dossier actuel Localiser le chemin du dossier actuel
> pwd > pwd
## Utiliser l'IDE en ligne
- Ouvir 1 fichier... en ligne sur l'IDE embarquée de GitLab...
/SI/ on veut travailler en ligne (IDE GitLab)...
On peut ouvrir un fichier spécifique
EX/ https://gitlab.com/bonnebulle/plain-html-redo/-/blob/main/README.md
--> Edit (boutton bleu)
--> Open in Web IDE...
# DO Git commandes depuis l'IDE local apres un clone ## PULL (aspirer == télécharger/sync)
Une fois un projet cloné.... quand on est dans son dossier on peut télécharger les dernières modifications apportées par les dev dans leur repertoire de travail git (distant)....
Récupèrer les fichiers tels que présents sur GitLab/Hub
( on récupère l'état de travail des fichiers présents sur le serveur )
> git pull
( va prévenir si des modifications difèrent en local )
# Git commandes depuis l'IDE local apres un clone
DEPUIS notre IDE, on va pouvoir sauvegarder l'état d'avancement du projet en utilisant GIT DEPUIS notre IDE, on va pouvoir sauvegarder l'état d'avancement du projet en utilisant GIT
( qui se charge : ( qui se charge :
@@ -212,10 +236,7 @@ Ils permettent...
## TUTOS + COMMANDES
# TUTOS + COMMANDES
- Git - Git dans Bash - Git - Git dans Bash
↳ https://git-scm.com/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Bash ↳ https://git-scm.com/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Bash
@@ -227,24 +248,88 @@ Ils permettent...
↳ https://git-scm.com/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Visual-Studio-Code ↳ https://git-scm.com/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Visual-Studio-Code
---
## PULL (aspirer)
Récupère les fichiers tels que présents sur GitLab/Hub
( on récupère l'état de travail des fichiers présents sur le serveur )
> git pull
( va prévenir si des modifications difèrent en local )
## Etat des fichiers :
## Etat des fichiers + processus intermédiaires
- staged/stash - état intermédaire des fichiers priss en compte (ou pas)
- puis commit - sauvegarde de cet état de cet état (staged) du projet,
- puis envoi - push
![](https://bulle.vincent-bonnefille.fr/pj/git_cours/git_workflow_002-3557173400.png)
( source : https://nulab.com/learn/software-development/git-tutorial/git-basics/ )
![](https://bulle.vincent-bonnefille.fr/pj/git_cours/explained-git-basic-workflow.png)
( source : https://tecadmin.net/basic-git-workflow/ )
![](https://bulle.vincent-bonnefille.fr/pj/git_cours/git-add-commit-144050348.png)
( source : https://www.earthdatascience.org/workshops/intro-version-control-git/basic-git-commands/ )
Quand un fichier est modifié, pour enregistrer son état actuel, ici, en local..
... dans un état actuel : **staged**
--> **staged** == "stade" / "état"
... la version prise en compte se retrouve dans un espace disque de sauvegarde "**satsh**"
... les fichiers dans le **stash** (et leur état **staged**) sera pris en compte durant le prochain **commit**
.... le **commit** permet d'indiquer aux autres utilisateurs quelles modifications ont été apportées au projet
.... Je peux indiquer ce qui marche et expliquer les modifications
.... la dernière étape sera d'envoyer l'état actuel des fichers (**staged/stash**) et le commentaire du **commit** ... au serveur !
... ! Pour l'user : D'autres utilisateur.ices pourrons ainsi se référer à ce point de sauvegarde
..... ( par son nom et son identifiant unique **hash** )
..... restaurer ou étudier le code depuis ce point de sauvegarde
... ! Pour la/le dev : **plutôt que d'envoyer un à un chaque fichier, cette méthode permet de tout synchroniser d'un coup**
.... quand le commit est prêt on `git push` !
## Etat des fichiers -- staged/stash - status
On peut voir l'état des fichiers :
> git status > git status
EX/
```bash
Sur la branche main
Votre branche est à jour avec 'origin/main'.
Modifications qui seront validées :
(utilisez "git restore --staged <fichier>..." pour désindexer)
nouveau fichier : NEW_file_ready.md
Modifications qui ne seront pas validées :
(utilisez "git add/rm <fichier>..." pour mettre à jour ce qui sera validé)
(utilisez "git restore <fichier>..." pour annuler les modifications dans le répertoire de travail)
supprimé : fullyfly.md
Fichiers non suivis:
(utilisez "git add <fichier>..." pour inclure dans ce qui sera validé)
NEW_file.md
```
- "non suivis" == le fichier n'a pas été ajouté (add) en **staged**
- "qui ne seront pas validées" == fichier supprimé dans les fichiers (mais pas avec git rm)
- "qui seront validées" == sont dans le stash (ajoutés)
On nous indique alors ceux qui sont modifiés, les quels sont dans le **staged** (ou non)
.. quels fichiers seront compris dans le prochain **commit** (et comment)
### ADD
On peu ensuite ajouter l'état actuel de nos fichiers (modifications) au **staged**
Ajouter un fichier (ou tous *) Ajouter un fichier (ou tous *)
> git add ./README.md > git add ./README.md
> git add * > git add *
### RM / checkout / restore
Remove du stash (état lattant avant commit + push) Remove du staged (état lattant avant commit + push)
... Cela ne supprime pas le fichier sur notre ordinateur/serveur (en local)
... mais cela le retire du staged, de la liste des fichiers qui seront affectés par le prochain commit
> git rm ./README.md > git rm ./README.md
annuler un ajout sur un fichier annuler un ajout sur un fichier
@@ -255,21 +340,45 @@ restaure
## Commit ## Commit + éditeur
Git commit ( sauvegarder l'état actuel des fichiers locaux )
( sauvegarder l'état actuel des fichiers locaux ) ( tel que pris en compte dans le **staged** )
> git commit > git commit
... on écrit les modifications apportées dans le navigateur text ### Editeur - ligne de commande
... on peut installer nano https://command-not-found.com/nano
... ou utiliser vim... /CHOIX/ on peut écrir les modifications directement depuis la commmande
> git commit -m 'initial commit of my project'
### Editeur - nano / vim / autres
/CHOIX/ on écrit les modifications apportées dans l'éditeur de text dans le shell/terminal
. on peut installer nano https://command-not-found.com/nano
. ou utiliser Vim ( un autre éditeur )...
... ( les commandes se font au clavier )
... ( : indique une commande )
... --> https://vim.rtorr.com
....
.... on tappe -- ESCAPE + ":a" pour rendrer en mod édition .... on tappe -- ESCAPE + ":a" pour rendrer en mod édition
.... on quitte+save en tappant -- ESCAPE + ":wq" .... on quitte+save en tappant -- ESCAPE + ":wq"
.... on quitte no_save tappant -- ESCAPE + ":q!" .... on quitte no_save tappant -- ESCAPE + ":q!"
/OU/ directement depuis la commmande
> git commit -m 'initial commit of my project' . ou autre éditeur tel VSCodium
### Editeur - définir par défaut
/DO/
> git config --global core.editor nano
( détail : https://git-scm.com/book/fr/v2/Démarrage-rapide-Paramétrage-à-la-première-utilisation-de-Git )
## Log ## Log
Visualiser les modifications : Visualiser les modifications :