#################################### ####################################
Ce tutorial propose les bases pour créer un repertoire git en local puis mettre à jour un repertoire github qui lui sera lié.
#################################### ####################################
git config --global user.email "you@example.com" git config --global user.name "Your Name"
cd /home/user/Documents
CD C:\Documents\
mkdir monRepo
MKDIR monRepo
cd /home/user/Documents/monRepo
CD C:\Documents\monRepo
####################################
On initie un nouveau repertoire git qui va tracker TOUS les changements fait à l'intérieur de ce repertoire
git init
On peut à présent mettre des fichiers dans ce repertoire (copy/paste ou création de nouveaux fichiers sont possible)
J'indique à git que je ne veux enregistrer que les changements réalisés sur hello.py et fichier1.txt
git add hello.py fichier1.txt
git status
#resultat:
######################### On branch master
Initial commit
Changes to be committed: (use "git rm --cached ..." to unstage)
new file: fichier1.txt
new file: hello.py
Untracked files: (use "git add ..." to include in what will be committed)
.hello.py.swp
fichier2.txt
fichier3.txt
hello.py~
########################
On voit que fichier2.txt et fichier3.txt sont dans la catégorie 'Untracked files' et ne seront pas pris en charge par git
En revanche fichier1.txt et hello.py sont dans la catégorie 'Changes to be commited' et sont donc suivis par git
Maintenant il faut dire à git que nous validons la création de ces fichiers (ou des modifications faites dans ces fichiers) par un 'commit'
git commit -m "j'ai ajoute deux fichiers!"
le message lié au commit permet pour vous et les autres utilisateurs de garder une trace des modifications effectuées
#resultat:
######################### [master (root-commit) 4936cdc] add a lot of crapp! 2 files changed, 2 insertions(+) create mode 100644 fichier1.txt create mode 100644 hello.py #########################
git log
#resultat:
######################### commit 4936cdcdc92d50ccb97339a98b377c7b2a0dc68a Author: asoudant asoudant@homail.fr Date: Thu Dec 8 15:10:40 2016 +0100 #########################
Une branche permet de garder une copie du repertoire principal (nommé master) et de faire des modifications qui ne seront
enregistrées QUE sur cette branche. On peut donc faire des betises sans que cela n'affecte le travail fait avant.
git branch
#resultat:
#########################
- master #########################
git branch say-goodbye
Nous la voyons a présent dans nos branches mais l'astérisque * indique que nous travaillons toujours sous master
git branch
#resultat:
#########################
- master say-goodbye #########################
git checkout say-goodbye
#resultat:
######################### Switched to branch 'say-goodbye' #########################
Pour cela, allez sous github, et créez un nouveau repertoire (bouton New dans l'onglet Repositories de votre profil)
et copiez l'adresse qui est proposée dans le bouton vert 'Clone ou Download' une fois que le repertoire créé
git remote add origin https://github.com/AlexSoudant/git-tuto.git
git push -u origin master
Username for 'https://github.com': AlexSoudant Password for 'https://AlexSoudant@github.com':
#resultat:
######################### Counting objects: 7, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (7/7), 486 bytes | 0 bytes/s, done. Total 7 (delta 1), reused 0 (delta 0) To https://github.com/AlexSoudant/git-tuto.git
- [new branch] master -> master #########################
On peut également penser qu'un autre utilisateur ait modifié le repertoire github et donc vous souhaitez downloader
git pull origin master
###########################################################
Pour les repertoires forkés, on créé donc une copie d'un repertoire github vers un autre repertoire github
On ne peut donc effectuer des modifications que sur notre copie github et notre copie locale mais non sur le repertoire d'origine
Vous aurez ensuite à cliquer sur 'Create pull request' et renseigner les boites d'écriture pour vos modifications apportées
si vous etes dans le sens votreRepo <- sonRepo vous pouvez cliquer sur 'Merge pull request' pour accceter les modifications
sinon dans le sens votreRepo -> sonRepo vous n'avez plus qu'a attendre que la personne en charge du repertoire d'origine accepte
###########################################################
Pour vous entrainez:
- Créez un repertoire local
- Forkez mon repertoire github vers votre github
- faites le lien entre le repertoire local et votre repertoire github
- Ajoutez des modifications en local
- Pushez sur votre repertoire github
- Faites une pull request pour que j'accepte votre modification
Ajoutez moi un petit chat dans ce fichier pour prouver que vous avez suivi!
/\__/\
/` '
=== 0 0 ===
\ -- /
/
/
| |
\ || || /
_oo__oo_/#######o Bon courage!