J'ai un plan Bamboo qui exécute un script pour construire un projet. Le script met à jour les fichiers AssemblyInfo.cs dans la solution jusqu'au numéro de build suivant, puis valide la modification et effectue une extraction pour fusionner les modifications et éviter d'avoir plusieurs têtes.Mercurial commit sur le nouveau dépôt
hg commit -m "$(Major).$(Minor).$(Build).$(Revision)"
hg fetch
La sortie de bambou finit par être:
02-Jul-2012 07:50:11 CommitChanges:
02-Jul-2012 07:50:11 Commiting version number changes for d:\Builds\TDFGE-DRD-JOB1
02-Jul-2012 07:50:11 hg commit -m "1.0.0.6"
02-Jul-2012 07:50:12 created new head
02-Jul-2012 07:50:12 hg fetch
02-Jul-2012 07:50:12 abort: multiple heads in this branch (use "hg heads ." and "hg merge" to merge)
02-Jul-2012 07:50:12 d:\Builds\TDFGE-DRD-JOB1\Build.proj(96,3): error MSB3073: The command "hg fetch" exited with code 255.
02-Jul-2012 07:50:12 Done Building Project "d:\Builds\TDFGE-DRD-JOB1\Build.proj" (UpdateVersionAndBuild target(s)) -- FAILED.
02-Jul-2012 07:50:12
02-Jul-2012 07:50:12 Build FAILED.
Les docs pour Mercurial dit que Fetch devrait obtenir le dernier code et fusionner les modifications.
Cela semble être une tâche très simple, changer certains fichiers, les vérifier, continuer. Alors qu'est-ce qui me manque ici? Ai-je besoin de faire une fusion ou quelque chose? PS. J'ai essayé d'ajouter une autre fusion/validation après la validation d'origine (cela ne semblait pas correct, mais cela s'est terminé), mais les fichiers repassés dans le référentiel principal avaient toujours l'ancien numéro de version, ils étaient inchangés. On dirait que la commande merge a pris le référentiel principal en tant que parent principal.
Je peux exécuter cette commande localy toute la journée, aucun problème, pas de têtes multiples. La seule différence que je peux penser est que, dans TortoiceHg Workbench, j'ai vérifié checkbok (résoudre automatiquement les conflits de fusion si possible) dans la boîte de dialogue Post Pull Behavior. Je ne sais pas si cela fait une différence, mais ça pourrait le faire. –
Également exécuté la commande localement en tant qu'utilisateur de génération dans le même dossier que lorsque Bamboo l'exécute et cela fonctionne. Est-ce que HG agit différemment lorsque l'utilisateur s'exécute en tant que service? –