Git - comment la force de conflit de fusion et fusion manuelle sur le fichier sélectionné

Nous maintenons application web qui a du bon la branche principale, et de nombreuses branches parallèles, un pour chaque installation, chaque avoir quelques changements spécifiques. Le code Source est géré dans git et il est formidable outil lorsque nous avons besoin de transfert de fonctionnalités et corrections de branche master en parallèles. Mais rares sont les fichiers qui sont sensibles et automatique de la fusion de l'habitude de donner de mauvais résultats. Donc, la fusion serait beaucoup plus facile si elles peuvent être en quelque sorte marqué et chaque fusion entraînerait des conflits nécessitant une fusion manuelle.

J'ai cherché une réponse :

  1. Je suis en utilisant --no-commit et --no-ff options de fusion, mais il n'est pas le même.
  2. Ici et ici quelqu'un pose la même question, mais avec pas de solution.
  3. Cas similaire semble être comment prévenir le fichier fusionné à l'aide .gitattributes contenant: somefile.php fusion=nôtre . J'ai essayé de trouver certains de fusion option qui permettrait de générer des conflits ou de force manuel de fusion, mais aucune n'a été trouvée jusqu'à présent.
  4. .gitattributes contenant: somefile.php -fusion n'est jamais fusionnées automatiquement et donc de forçage manuel de fusion. Il est de 90% de la solution, mais ce que je cherche, c'est d'essayer automatique de la fusion et de la marquer comme conflit, peu importe c'est réussi ou pas. Mais c'est de loin le plus proche de la solution. (...grâce Charles Bailey pour des précisions...)
  5. Quelqu'un suggère d'écrire une fusion personnalisée pilote (Un, Deux), mais comment faire, il est loin d'être claires pour moi.

edit: variante 4. description

  • Ce ne serait pas la réponse exacte que vous cherchez, mais pour la même raison que je ne git fetch d'abord, puis utiliser git difftool <file> FETCH_HEAD, afin que je puisse appliquer manuellement le changement de la distance direction générale de la section locale.
  • CMH: c'est la tour de nice (surtout s'il est enregistré dans le script pour chaque branche parallèle + combiné avec la prévention des fichiers à partir d'automatique de fusion). Principal inconvénient, c'est que dans l'équipe de workflow, les chances sont que quelqu'un oublie cette étape et tout à fait normal de fusion à la place.
  • Réglage -merge ne vous empêche pas de fusionner les fichiers, c'est juste vous oblige à le faire manuellement, par exemple avec un mergetool. N'est-ce pas ce dont vous avez besoin?
  • C'est 90% de ce que je veux. Je voudrais que la fusion se fait automatiquement, mais pour ce de fichiers sensible à la fusion est considéré comme un conflit, même quand il n'y a pas de contrôle manuel est forcé de tous les temps.
  • Je suis dans une situation similaire, donc je tiens à préciser quelque chose. Ce que vous dites que, avec -merge dans .gitatttributes git merge ne fait rien, et tous les travaux doivent être vers le bas avec l'outil de fusion? Donc, il n'y a pas de <<<<< ===== >>>> pour l'outil de fusion à utiliser, non? Et Dan la solution de ne fournir cette?
InformationsquelleAutor Stepan | 2011-02-22