2017-08-01 2 views
0

Par exemple existe hg rep A - environnement d'installation de projet. Il contient les fichiers suivants:Comment utiliser le référentiel parent Mercurial fork?

//project A 
.some_config_file 
script_1 

Après projet B fourchue de A, quelques changements ont été faits.

// project B 
M .some_config 
M script_1 

parallèle dans le projet A il a été amélioré certaines fonctionnalités ou un bug dans script_1.

// project A 
M script_1 

Lorsque je tente de tirer de nouvelles fonctionnalités (hg pul -u 'repA') à B de A, il apporte vieux .some_config retour au référentiel et une réelle écrase.

Et il y a mes questions:

Comment puis-je résoudre ce conflit?

Comment tirer partiellement les changements de parent fourchette?

Et quelle est la meilleure pratique pour travailler avec fork parent?

L'extraction d'un repère forké pollue la section locale.

enter image description here

Répondre

1

Vous semblez être peu familiers avec la distinction de votre « copie de travail » et le dépôt comme un arbre de changesets individuels.

La solution est probablement: mettez à jour votre copie de travail à votre fork B. Puis fusionnez le projet original, fork A, dans votre version actuellement retirée, dans fork B. Attention à n'accepter que ces changements lors de la fusion vous voulez être fusionné - et ignorer toutes les modifications apportées à .some_config

En plus de cela, c'est souvent une mauvaise idée d'avoir des fichiers de configuration dans un repo. Seulement exemple fichiers de configuration là (et nommez-les) et gardez le fichier de configuration réel à l'extérieur, non-tracé.

+0

config ne contient pas d'informations sécurisées, il est juste des propriétés de base du projet et l'exemple est fictif – Firanolfind

+0

J'ai fait quelque chose comme vous l'avez dit, mais il y a un problème. Les deux projets ont des branches ** dev ** et ** master **. Lorsque je tire ** A ** ** master ** branche vers ** B ** il mess avec ma rep ** maître ** locale. Je dois fusionner master et dev, ça devient un gâchis. Y at-il un moyen d'omettre cela, est-il possible de tirer sur une * branche * distincte qui représente la branche principale du parent rep? – Firanolfind

+0

vous pouvez explicitement donner un nom de branche à la commande push ou push – planetmaker