J'ai été heureux à l'aide de submodules pour suivre toutes les bibliothèques de mon projet dépend de. Le truc c'est que je suis en utilisant une bibliothèque appelée noyau de l'intrigue qui a seulement un public de dépôt mercurial. Je peux probablement miroir dans un readonly dépôt Git, mais est-ce la meilleure option que j'ai obtenu? J'avais vu il y a des modules Mercurial suivre les choses dans Git. Quelqu'un sait si l'inverse existe?
Réponses
Trop de publicités?À l'aide de git-hg.
Tout d'abord, assurez-vous que la (non-Mercurial) git sous-module sous votre dépôt principal. Si vous n'avez pas d'autres submodules pourtant, il suffit de créer un mannequin sous-module de bibliothèque autre que core-plot
, par exemple:
main-repo $ git submodule add https://repo.url.com/repo.git repo
Deuxièmement, clone de l' core-plot
bibliothèque dans un répertoire.
main-repo $ git-hg clone https://code.google.com/p/core-plot/ core-plot
Ajouter le nouveau repo pour le sous-module de la liste.
main-repo $ git submodule add ./core-plot core-plot
main-repo $ git commit -am "added core-plot submodule"
À partir de maintenant, n'importe quel clone de ce repo va tirer les deux référentiels. (Après le sous-module d'initialisation et mise à jour).
Certains des problèmes que j'ai trouvé jusqu'à présent sont:
- Si vous pousser à nu, puis les pensions de lien et le répertoire sera créé dans le nu, mais le dépôt ne sera pas cloné à l'intérieur et d'autres en tirant à partir de ce nu ne sera pas en mesure d'obtenir le core de la parcelle lib.
- Si de base-plot doit être mis à jour l'un avec l'
git-hg
devrontgit-hg pull
.
L'inverse question git sous-module de Hg repo? est également demandé sur StackOverflow. La meilleure réponse mentionne projets hg-git git-hg. Un autre converse question est de savoir Comment traiter avec les submodules sur un repo qui est converti Mercurial.
Dans mon expérience, la plupart des actifs non-git projets ont une up-to-date git miroir flottant autour sur GitHub. Il ressemble core-plot
a un de trop:
https://github.com/djw/core-plot
Si vous êtes prêt à s'appuyer sur celui qui jeu de miroir, il semble que cela pourrait être l'option la plus facile d'obtenir un sous-module en place.