2017-10-05 5 views
0

J'essaie de comprendre la fusion d'histoires sans rapport. La commande Git 'merge' a une option "--allow-unmatched history" pour fusionner des historiques sans rapport. Il me manque quelque clarté ici. Le dossier racine dans GIT est appelé 'projet'. projet contient de nombreux référentiels. Chaque repo peut avoir plusieurs branches.Pouvons-nous fusionner 2 projets de différents projets dans GIT

Considérant tout cela. J'ai deux 'projets' (a, b). Dans le projet 'a', j'ai un rapport appelé 'arepo'. 'arepo' a une branche 'abranch'. De même, il y a le projet 'b'. Le projet 'b' a un repo appelé 'brepo'. 'brepo' a une branche appelée 'bbranch'.

L'image suivante illustre la situation: - Unrelated branches

Dans cette situation, nous pouvons fusionner "abranch" et "bbranch" en utilisant l'option "allow-sans rapport avec-histoires" de GIT fusion?

Merci d'avance.

+0

Peut-être que [this] (https://stackoverflow.com/questions/37937984/git-refusing-to-merge-unrelated-histories) ou [this] (https://stackoverflow.com/questions/45272492/git -refuser-de-fusionner-sans-histoire-histoires-ce-qui-est-non-connexe-histoires) aidera – Soenhay

Répondre

0

De here il dit:

--allow-sans rapport avec-histoires Par défaut, la commande de fusion git refuse de fusionner des histoires qui ne partagent pas un ancêtre commun. Cette option peut être utilisée pour remplacer cette sécurité lors de la fusion des historiques de deux projets qui ont débuté leur vie de façon indépendante. Comme il s'agit d'une occasion très rare, aucune variable de configuration pour l'activer par défaut n'existe et ne sera pas ajoutée.

Il semblerait donc qu'il soit possible de fusionner des historiques indépendants en utilisant l'option --allow-unrelated-histories.

+0

Merci beaucoup pour votre réponse. Je comprends les possibilités. mon ambiguïté concerne les «histoires indépendantes». Le diagramme que j'ai présenté est-il un exemple précis pour des histoires sans rapport ou non? J'essaie de comprendre ce qu'on appelle des «histoires sans rapport»? –

+0

Les histoires non liées signifient simplement que les branches n'ont pas d'ancêtre commun comme dans votre diagramme. Donc je dirais que votre diagramme est précis. Si le projet a et b étaient des référentiels différents, alors en ce qui concerne git, ils n'ont pas un ancêtre commun même si b pourrait simplement être une copie de a. – Soenhay

+0

[ici] (https://stackoverflow.com/questions/1425892/how-do-you-merge-two-git-repositories) est un autre lien qui pourrait aider. – Soenhay