|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre éclairé
![]() Inscription : octobre 2006 Messages : 357 ![]() |
Bonjour,
Je me lance dans l'utilisation de GitHub, aussi j'ai quelques questions sur la méthodologie à suivre. 1-Création d'un dépôt. Préambule, j'utilise le framework javascript qooxdoo pour mon projet. - Je crée un dépôt distant "monDepot" sur GitHub - Je crée et génère mon projet "monProjet" en local via le framework - J'initialise mon projet avec "git init" en local - Puis "git add", "git commit" et "git push" pour remplir mon dépôt avec mon projet A ce stade, mon dépôt contient une branche "master" identique à la branche "master" locale. Ai-je bon? 2-Création d'une branche de développement Maintenant que mon dépôt contient la branche "master" propre, en local je crée une nouvelle branche "nvBranche". Je développe mon projet en local sur la branche "nvBranche". Suffisamment avancé, j'expose cette branche dans le dépôt via un push. Permettant, 1) d'avoir une "copie" distante, 2) que cette branche soit utilisable par autrui. Ai-je bon? 3-Fusionnement de la branche "nvBranche" avec la branche "master" Un fois mon projet normalement abouti en local sur ma branche "nvBranche", je fusionne, en local, mes 2 branches. Puis je push le "master" résultant vers le dépôt. Ai-je bon? Questions subsidiaires: Lorsque je push ma branche "nvBranche", je dois le faire lorsque je suis, en local, connecté sur "master" ou connecté sur "nvBranche". Une fois mes 2 branches fusionnées en locale, je push le "master" résultant vers le dépot. Dois-je, après, faire un pull vers le local? Voilà des questions qui peuvent paraitre bête, mais je m'initie. Merci de vos réponses averties. Jlmag NB: mes références sont: la doc Git le Community Book Le tuto Pro Git biensur. Un autre tuto qui ressemble au précédent Et d'autres .... |
|
00
|
|
|
#2 | ||||
|
Membre habitué
![]() Inscription : mars 2006 Messages : 85 ![]() |
1 : bon. Rien à dire
2 : la branche nvBranche est censée être développée par d'autres personnes en même temps ? Si oui, alors il faut la pusher. Sinon, autant la garder locale 3 : Tout bon. Ca reviendra a faire (on considère que tu es sur ta branche nvBranche et que tu viens de commiter la dernière version): Code :
Le push va mettre à jour le distant par rapport à toi (car c'est toi le plus à jour), tu n'auras pas besoin de faire de pull pour te mettre à jour car en fait, le distant et toi êtes synchronisés maintenant. Quelques explications en plus concernant le push : quand tu pushes, beaucoup de paramètres peuvent être évités par configuration (faire en sorte que les branches locale et distante soit en mode tracked) Exemple, quand tu clones un repository, git configure ton clone comme le dépot distant (dans 99% des cas, la branche principale sera : master). Donc tu auras une branche principale locale qui suivra (tracked) automatiquement la branche distante (dans 99% des cas : origin/master). Quand tu feras un simple Git va pusher toutes les branches suivies (tracked) par défaut vers leur dépôt distant. Donc comme ton master local suit le master distant (origin/master), ca reviendrait a faire un : La partie qui peut mélanger la dedans : quelle différence entre origin master et origin/master ? Le git push c'est : Code :
git push <nom du remote/dépot distant> <nom de la branche locale à pusher> Dernière information intéressante : différence entre pull et fetch : Un fetch permet de télécharger les derniers commits disponible sur le dépôt distant. Git fonctionne toujours en ayant toutes les informations d'historique/commit en local. La commande fetch permet juste de mettre à jour son clone. Par contre, en faisant un fetch, la branche distante (mais stockée en local dans ton clone) origin/master sera à jour. Par contre, il se peut que ta branche locale master ne soit pas a jour. Pour la mettre à jour, tu peux merger les dernières nouveautés qui ont été récupérée par fetch vers la branche origin/master vers ta branche locale master en faisant Code :
Dans certains cas, faire un fetch suivie d'un rebase est plus intéressant que faire un git pull ou git fetch+git merge, mais c'est un autre sujet, et je pense avoir déjà trop écrit et sortir du sujet ^^' |
||||
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Inscription : octobre 2006 Messages : 357 ![]() |
Bonsoir Dolanor,
Merci pour ces informations qui m'éclairent. Je suis parti dans le bon sens donc! jlmag |
|
00
|
Copyright © 2000-2013 - www.developpez.com