Usage des GIT et des espaces apaches

Problèmes, bugs et difficultés rencontrés sur le site.
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Usage des GIT et des espaces apaches

Message par Dominique »

Je rebondis sur un nouveau fil
leosw a écrit :J'ai merge les deux branches, mais j'ai besoin de conserver une branche "dev" sur laquelle je peux mettre une petite [censuré] sans me prendre la tête.
Ha OK. J'aurais dû faire ma modif sur le master et pas me soucier du DEV

Si c'est ça la définition, ça me va mais il faut qu'on se mette d'accord sur l'usage des espaces:

1/: (ce que je fais actuellement)
- modifs immédiates: Local (dom.ri ou wamp chez moi par ex.) => GIT master => dev.ri pour un dernier test => www.ri
- bidouilles : Local (leo.ri ou wamp) => GIT dev (mais pas dev.ri sinon, on est emm. quand on veut descendre une modif immédiate) ? mais pourquoi mettre les bidouilles en GIT ?

ou 2/ (si j'ai bien compris, ce que fait Léo)
- modifs immédiates: Local (dom.ri ou wamp) => GIT master => www.ri
- bidouilles : Local (leo.ri ou wamp) => GIT dev => dev.ri. Et on merge quand la vie du GIT dev le nécessite

ou 3/ (Simplifions)
- modifs immédiates: Local (dom.ri ou wamp) => GIT master => www.ri
- bidouilles : Local (leo.ri ou wamp)
et on vire le GIT dev qu'on recréera si on entame une migration majeure

ou autre ?

En clair: est ce que dev.refuges.info sert au test des modifs immédiates (pour être sur ou pour en discuter 1 ou 2 jours entre nous)
ou aux bidouilles + long terme (GIT master => www.ri + GIT dev => dev.ri

Je n'ai pas de préférence, mais j'aimerais connaître la règle du jeu :)
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Oups, je déplace mon commentaire vers ici, ça à l'air plus adapté :

Perso, j'aime assez bien avoir une branche dev finalement. Depuis qu'on a dit qu'on pouvait pousser sur master direct, finalement, je suis plus embrouillé qu'avant. (je fais mes additions sur l'un alors que je pense être sur l'autre ce qui m'oblige à des merge dans l'autre sens)

Mais je suis à l'écoute, si c'est pénible pour dominique je veux bien tenter le coup avec une seule branche master sur github et moi et léo on ne garde la branche dev que chez nous en local.
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Re: Usage des GIT et des espaces apaches

Message par sly »

ok, comparons nos méthodes :

Moi, je bossais toujours sur la branche dev, et soit c'est du test temporaire que je ne garde pas et je ne commit ni push rien dans git du tout
Soit c'est destiné à passer en prod sous peu et c'est tellement mineur que les risques de bug grave sont hyper faible, et là je push dans dev, puis je merge dans master puis je passe dev.r.i et www.r.i à la dernière version. (Oui, c'est pénible quand c'est juste pour change un é en è, mais j'ai un script qui contient toutes les ~6 commandes nécessaire pour faire ça)

( sauf si quelqu'un a précisé sur le forum qu'il avait bossé sur dev et que ça ne marchait pas bien auquel cas je ne push que vers master et je mets www.r.i à jour avec master)

Soit c'est un travail de longue haleine à moitié terminé avec risque de bug et alors je préviens sur le forum de ne pas passer dev vers master mais je commit+push régulièrement mes changements sur dev pour que d'autres qui bosseraient aussi sur dev ne rencontre pas trop de problème de merge

Concernant les espaces du sites, quand j'ai fini de bosser et que je compte faire une pose de plus de 1 jour, je fais en sorte que www.r.i contienne la branche master, et dev.r.i la branche dev
Concernant l'état de fonctionnement, je fais tout mon possible pour que la branche dev ne soit pas dans un état de non fonctionnement, je souhaite éviter qu'un autre qui veut bosser dessus ne se retrouve avec un "erreur fatal : manque un ;" et que ça l'oblige à corriger mes erreurs.
Si ma partie (sly.r.i) est dans cet état, alors je commit "en local" et ne push pas jusqu'a retrouver un état de fonctionnement un minimum correct

En clair: est ce que dev.refuges.info sert au test des modifs immédiates (pour être sur ou pour en discuter 1 ou 2 jours entre nous)
J'avoue que je pourrais me passer de dev.refuges.info, si j'ai modifié des trucs à montrer, j'indiquerais de regarder sur sly.refuges.info qui contiendra alors la branche dev, et si c'est à vous que je veux le montrer, je vous proposerais de faire un checkout de la branche dev pour regarder dans votre espace.
ou aux bidouilles + long terme (GIT master => www.ri + GIT dev => dev.ri
Tel que je l'ai dans ma tête, court ou long terme, ce que ça change, c'est de décider de merger dev dans master ou pas
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Re: Usage des GIT et des espaces apaches

Message par Dominique »

sly a écrit :Moi, je bossais toujours sur la branche dev, et soit c'est du test temporaire que je ne garde pas et je ne commit ni push rien dans git du tout ...

Concernant les espaces du sites, quand j'ai fini de bosser et que je compte faire une pose de plus de 1 jour, ... je fais tout mon possible pour que la branche dev ne soit pas dans un état de non fonctionnement, je souhaite éviter qu'un autre qui veut bosser dessus ne se retrouve avec un "erreur fatal : manque un ;" et que ça l'oblige à corriger mes erreurs...

sauf si quelqu'un a précisé sur le forum qu'il avait bossé sur dev et que ça ne marchait pas bien auquel cas ...
Soit c'est un travail de longue haleine à moitié terminé avec risque de bug et alors je préviens sur le forum de ne pas passer dev vers master...
Ben oui, c'est là mon pb:
Je suis tombé hier sur un état ou je ne pouvais pas faire un pull sur dev parce qu'il me demandait un merge (très exactement un commit, ce qui est curieux).
Et comme je ne sais pas qui est en train de faire quoi, si ce qu'il y a dans dev peut être comité, s'il faut merger ce qu'il y a dans dev, ... j'ai préféré m'abstenir (désolé, je n'ai pas tout suivi des modifs en cours sur le forum ou les issues de git).
Quand on est en plein travail communautaire c'est bon mais quand je suis sur autre chose depuis des mois et que j'ai juste un petit truc à pousser, je ne sais pas si c'est OK.
(je ne dis pas ça pour râler, je vous expose juste ma vue du moment)
J'avoue que je pourrais me passer de dev.refuges.info, si j'ai modifié des trucs à montrer, j'indiquerais de regarder sur sly.refuges.info qui contiendra alors la branche dev, et si c'est à vous que je veux le montrer, je vous proposerais de faire un checkout de la branche dev pour regarder dans votre espace.
Ha ben je ne veux pas être le boulet de la bande :calimero:
Oui, il faut garder dev pour les expérimentations en cours (je serais probablement le premier à le demander si j'en faisais :) )
Notamment pour montrer un truc pour lequel on veut avoir l'avis avant de le mettre en prod
Note: si on tente un truc de fond comme phpbb3, on fera probablement encore une autre branche...
Soit c'est destiné à passer en prod sous peu et c'est tellement mineur que les risques de bug grave sont hyper faible, et là je push dans dev, puis je merge dans master puis je passe dev.r.i et www.r.i à la dernière version. (Oui, c'est pénible quand c'est juste pour change un é en è, mais j'ai un script qui contient toutes les ~6 commandes nécessaire pour faire ça)
Ben oui mais si quelqu'un est en train de travailler sur dev, on envoie le tout en prod ou on est obligé d'attendre pour pousser la modif mineure

Ce qui m'irait bien (pour les petites modifs)
dom.r.i ou wamp -> git master -> pull dans wri
Ceux qui bossent dans dev (et savent exactement où ils en sont de l'état des modifs) resynchronisent quand ils veulent le master et ses modifs mineures avec ce qu'ils viennent de stabiliser (merge a été fait pour ça non ?)
D'ailleurs, ça sert à quoi d'avoir une branche git dev si on fait tout le temps dev.r.i -> git dev -> git master ?
leosw_

Message par leosw_ »

Salut à tous,

Depuis mon téléphone donc réponse assez courte.

Personnellement je met tout sur le GIT dev et je ne laisse jamais rien en local de peur de le perdre. Donc les modifs assez grosses y sont, de même que les petites. Et je fait mes tests sur mon espace leo.ri.

Mais pour les mini modifs (une ligne CSS ou un accent), je fait ça dans master.

dev.ri ne me sert jamais il faut l'avouer. Quand je discute d'un bug avec qqn, je lui envoi le lien vers leo.ri en général.

Ensuite pour le merge de dev dans master, je le fais ou je demande à sly de le faire via le forum.

J'ai l'impression de fournir une réponse tordue.

Léo
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Message par Dominique »

leosw_ a écrit :Salut à tous,

Depuis mon téléphone donc réponse assez courte.

Personnellement je met tout sur le GIT dev et je ne laisse jamais rien en local de peur de le perdre. Donc les modifs assez grosses y sont, de même que les petites. Et je fait mes tests sur mon espace leo.ri.

Mais pour les mini modifs (une ligne CSS ou un accent), je fait ça dans master.

dev.ri ne me sert jamais il faut l'avouer. Quand je discute d'un bug avec qqn, je lui envoi le lien vers leo.ri en général.

Ensuite pour le merge de dev dans master, je le fais ou je demande à sly de le faire via le forum.

J'ai l'impression de fournir une réponse tordue.

Léo
Je serais assez proche de ce fonctionnement sauf que je met rien sur le git dev
En fait, je suis tombé sur une galère cette fois parceque j'ai comité sur le git dev au lieu du master (petit pb de conf tortoise)
Je continue donc: wamp -> git master -> wri
Merci pour votre feed back
Avatar du membre
leosw
Messages : 539
Enregistré le : 28 févr. 2013, 17:28
Localisation : Montagne noire

Message par leosw »

Salut,

Personnelement j'ai un soucis dans leo.ri, c'est qu'un "git push" ne marche pas, je suis toujours obligé de mettre "git push origin dev/master". Je sais donc où je push.

Sinon, pour rappel, "git checkout dev" pour passer à la branche dev et "git branch" pour le récap des branches.

Léo
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Dominique a écrit : Je continue donc: wamp -> git master -> wri
Merci pour votre feed back
Mon avis : que chacun fasse ce qui est le plus simple pour lui, si besoin, faites moi signe et à coup de pull/merge/push j'arrive à dépatouiller le truc et je n'ai jamais été coincé pour l'instant.
Modifié en dernier par sly le 03 oct. 2014, 18:18, modifié 1 fois.
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

leosw a écrit : Personnelement j'ai un soucis dans leo.ri, c'est qu'un "git push" ne marche pas, je suis toujours obligé de mettre "git push origin dev/master". Je sais donc où je push.
J'ai ça dans mon .git/config :

Code : Tout sélectionner

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        fetch = +refs/heads/*:refs/remotes/origin/*
        url = git@github.com:sletuffe/www.refuges.info.git
[branch "dev"]
        remote = origin
        merge = refs/heads/dev
[branch "master"]
        remote = origin
        merge = refs/heads/master
et avec ça, un "git push" marche que je sois moi en local sur la branche dev ou la branche master et ça push au bon endroit
Avatar du membre
leosw
Messages : 539
Enregistré le : 28 févr. 2013, 17:28
Localisation : Montagne noire

Message par leosw »

Moi quand je suis dans dev, il me met erreur lors du push car master ne peut le recevoir.
Avatar du membre
leosw
Messages : 539
Enregistré le : 28 févr. 2013, 17:28
Localisation : Montagne noire

Message par leosw »

Salut à tous,

Je n'arrive pas à pull dans dev.ri, il y a un soucis de merge que je ne comprends pas. Quelqu'un fait des édits dans cet espace ? Il semble que quelque n'ai pas été commité.

Léo

Edit : Il semble que je n'ai pas les droits, si c'est possible sur dev.ri de me les donner, ça me permet de tester sur la base de test, sinon je doit créer des points sur wri.
Avatar du membre
Dominique
Messages : 3704
Enregistré le : 08 avr. 2006, 21:58

Message par Dominique »

leosw a écrit :Je n'arrive pas à pull dans dev.ri, il y a un soucis de merge que je ne comprends pas. Quelqu'un fait des édits dans cet espace ? Il semble que quelque n'ai pas été commité.
J'ai re-cloné le dev.ri à partir du GIT dev
Perso, je refais ça presque à chaque fois dans dom.ri parce que je laisse la plupart du temps une conf en vrac quand j'ai terminé mes tests :saint:
Il semble que je n'ai pas les droits, si c'est possible sur dev.ri de me les donner, ça me permet de tester sur la base de test, sinon je doit créer des points sur wri.
Note: l'espace apache et la base sont indépendants et il n'y a pas de droits particuliers
En fonction du config_privee.php, tu peux tester indifféremment sur la base de prod ( $config['base_pgsql']="refuges"; ) ou de test ( $config['base_pgsql']="test"; ). Même sur leo.ri
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

leosw a écrit : Edit : Il semble que je n'ai pas les droits, si c'est possible sur dev.ri de me les donner, ça me permet de tester sur la base de test, sinon je doit créer des points sur wri.
Il te manque quoi comme droits ?
L'accès à www.ri ou à dev.ri est le même, par ssh, le login c'est "refuges" et le mot de passe c'est le même que celui d'accès à la base de donnée (visible dans /includes/config_privee.php )

ça te permet de mettre à jour dev.ri ou www.ri
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Message par sly »

Dominique a écrit : Perso, je refais ça presque à chaque fois dans dom.ri parce que je laisse la plupart du temps une conf en vrac quand j'ai terminé mes tests :saint:
C'est un peu bourrin, ça t'oblige à re-créer le fichier config_privee.php et le fichier .htaccess qui sont deux fichiers ignoré (.gitignore) et pas présents dans github

Toutefois, j'avoue que parfois je me suis tellement embrouillé moi aussi à effacer les mauvais fichiers, en ajouter plein qui "polluent" que dans mon espace de travail je sais plus ce qui sert et ce qui ne sert plus.
Or, un "git pull" ne suffit pas à remettre tout "à zéro" car ça garde bien sûr toutes mes modifs locales (dont je veux justement me débarrasser) j'utilise alors la magouille suivante :

Code : Tout sélectionner

rm modeles/ vues/ gestion/ controlleurs -rf  -------> j'efface le ou les dossiers dans lesquels je sais que c'est le souk
git pull ---------> je récupère les derniers commits
git log ---------> je recupère, en haut, le tout dernier commit
git reset --hard 2fdd8f666bc05a517c90604a8f0711e4a53330b5 -----> la magie s'opère ici, tout mon "espace de travail" passe dans l'état propre de git

Bon, d'accord, tout virer pour tout remettre, ça s'apparante à un "git clone" ;-) mais ça me garde mes trucs que je sais vouloir garder et qui ne sont pas dans git, et ça garde donc aussi les 2 fichiers pré-cités

J'offre un carambar à celui qui trouve plus simple et plus rapide car ça m'intéresse une méthode "normale" ;-)
Avatar du membre
sly
Messages : 5041
Enregistré le : 29 févr. 2004, 17:59
Localisation : Chambéry - Savoie

Re: Usage des GIT et des espaces apaches

Message par sly »

Dominique a écrit : D'ailleurs, ça sert à quoi d'avoir une branche git dev si on fait tout le temps dev.r.i -> git dev -> git master ?
Moi, je ne le fais pas systématiquement, surtout ces derniers temps où je change des noms de fichiers, je fais du rangement, je créer des controlleurs. Qui sont typiquement des opérations qui amène à des "warning, cannot open file" ou des "404 file not found" à des endroits que je ne soupçonnais pas. Auquel cas, en laissant mariner dans dev pendant genre 3 mois, j'augmente mes/vos chances de le repérer avant de passer en prod.

Mais je suis conscient que le besoin d'une branche dev est "faible", car personne ne s'en sert vraiment pour faire des vrais saisie et de la vrai modération du site, de sorte que les bugs ne sont finalement repérés que lorsque les modifs sont sur www.ri

Bref, si vous souhaitez on peut tenter de virer complètement cette branche dev et bosser sur master directement, on verra à l'usage si des choses insurmontables nous tombent dessus, mais j'ai peu d'inquiétudes