Bonjour !
Je galère un peu avec git et les remotes
. J'utilise les remotes
pour suivre les développements du noyau Linux dans différents sous-systèmes. Ensuite, avec git pull --all
, le contenu des remotes
(que je n´ai pas déjà) est récupéré, et je peux faire un check-out
de n´importe quelle branche de chaque remote
. Tout vas bien. :-)
Par contre, si je clone mon propre clone avec git clone my-linux my-linux-for-tests
, le nouveau clone ne contient aucune des remotes
présentes dans my-linux/
.
+--------------------+ +-------------+ +---------+ +------------+
| torvalds/linux.git | | arm-soc.git | | kvm.git | | kbuild.git |
+--------------------+ +-------------+ +---------+ +------------+
| | | |
| clone | | |
v | | |
+-----------+ | | |
| my-linux/ | <---------------+---------------+-------------+
+-----------+ remote add [name] [url]
|
| clone
v
+--------------------+
| my-linux-for-tests |
+--------------------+
Comme je peux être en mode déconnecté, je veux pouvoir garder une référence locale intacte, et donc je ne fais aucune modification dans my-linux/
(sauf des pull --all
pour le mettre à jour).
Donc, je fais mes développements dans un second clone jetable my-linux-for-tests
. Comme je peux travailler sur différents sous-systèmes, je voudrait avoir toutes les remotes
aussi présentes dans ce nouveau clone.
Hé bien, git ça a beau être une tuerie, le meilleur DVCS de tous les temps, que ça poutre sa maman ours, etc… pas la moindre bribe d'info dans la doc sur le comment faire ça. A croire que c´est pas possible…
Donc, je me tourne vers vous, chères moules : des suggestions ? Merci par avance de vos lumières ! :-)
Hop,
Moi.
PS. Je n'utilise pas n clones, pour économiser de la place sur le HDD, et de la bande passante lors de mises à jour.
# cp
Posté par GaMa (site web personnel) . Évalué à 0.
éventuellement suivi de :
Matthieu Gautier|irc:starmad
[^] # Re: cp
Posté par GaMa (site web personnel) . Évalué à 1.
Je comprend pas pourquoi tu veux pas faire un :
La branche master reste inchangée. Tu as donc ta référence locale intacte.
Matthieu Gautier|irc:starmad
[^] # Re: cp
Posté par ymorin . Évalué à 2.
Pas tout à fait. Comme je peux jouer sur les branches des
remotes
(par exemple, préparer unmerge
ou unrebase
pour vérifier si la prochaine intégration va bien se passer), ça peut modifier le dépôt.En fait, j'utilise déjà des branches suiveuses (
tracking branch
) pour les évolutions (bug-fix ou fonctionnalités), mais ça ne me suffit pas pour le reste.Hop,
Moi.
[^] # Re: cp
Posté par GaMa (site web personnel) . Évalué à 1.
Je doit être stupide mais je vois toujours pas où est le problème.
Tu veux faire un test:
Tu codes, tu commit dans la branche mon-test (ni master ni remotes/* sont modifiés)
Tu veux tester un merge avec kvm.git/master :
Ça modifie la branche mon-test, pas kvm/master.
Un fois le test de merge fait:
En aucun cas les branches remote sont modifiées (elles pointent toujours sur le même commit)
D'ailleurs tu ne dois pas les modifier puisqu'elles sont sur un dépôt distant.
Matthieu Gautier|irc:starmad
# Une espèce de solution …
Posté par ymorin . Évalué à 2.
Bon, j´ai réussi à faire un truc qui semble fonctionner …
Et voilà. C´est pas très-très git-aware, mais cela semble fonctionner …
Si quelqu´un a mieux, je suis preneur.
Hop,
Moi.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.