J'ai une application web pour laquelle je veux créer des patches. Plus précisément, je veux créer des correctifs pour activer des fonctionnalités spécifiques sur le serveur Web.Difficulté à scinder des patchs mercuriels
JAVA_OPTS="-Xms128m -Xmx256m $JAVA_OPTS -Djava.awt.headless=true -Datlassian.standalone=JIRA -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true "
# Perm Gen size needs to be increased if encountering OutOfMemoryError: PermGen problems. Specifying PermGen size is not valid on IBM JDKs
PRGDIR=`dirname $0`
JIRA_MAX_PERM_SIZE=128m
if [ -f "${PRGDIR}/permgen.sh" ]; then
echo "Detecting JVM PermGen support..."
. ${PRGDIR}/permgen.sh
if [ $JAVA_PERMGEN_SUPPORTED = "true" ]; then
echo "PermGen switch is supported. Setting to ${JIRA_MAX_PERM_SIZE}"
JAVA_OPTS="-XX:MaxPermSize=${JIRA_MAX_PERM_SIZE} ${JAVA_OPTS}"
else
echo "PermGen switch is NOT supported and will NOT be set automatically."
fi
fi
# use this if you want to import data without notifications
#JAVA_OPTS=" -Datlassian.mail.senddisabled=true -Datlassian.mail.fetchdisabled=true -Datlassian.mail.popdisabled=true $JAVA_OPTS "
export JAVA_OPTS
echo "If you encounter issues starting up JIRA Standalone Edition, please see the Troubleshooting guide at http://confluence.atlassian.com/display/JIRA/Installation+Troubleshooting+Guide"
Ce que je veux faire est d'économiser un patch pour chaque modification individuelle que je dois apporter à ce dossier de telle sorte que les correctifs peuvent être appliqués individuellement (à l'aide qpush vous suffit de placer) ou tous ensemble (qpush - a)
J'ai d'abord essayé ce qui suit avec une version propre du fichier:
hg qnew jmx.patch
Je modifié la première ligne du fichier à inclure les éléments suivants
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8089 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
puis rafraîchi le patch
hg qrefresh
Le sauté le patch pour commencer à travailler sur la deuxième modification de la base propre
hg qpop
hg qnew jelly.patch
Le I modifié la première ligne du fichier à inclure les éléments suivants
-Djira.jelly.on=true
puis rafraîchi le patch
Lorsque j'ai ensuite essayé de qpush l'ancien patch, il a échoué à s'appliquer. Alors j'ai essayé une autre approche, qui devait d'abord créer un patch de base:
hg qpop -a
hg qnew base.patch
, qui a ajouté ce qui suit au fichier
JMX_OPTS=
JELLY_OPTS=
JAVA_OPTS=" ${JAVA_OPTS} ${JELLY_OPTS} ${JMX_OPTS} "
, puis actualisez base.patch
hg qrefresh
Créez ensuite un nouveau correctif pour jmx alors que base.patch était toujours appliqué:
hg qnew jmx.new
modifier le fichier comme suit:
JMX_OPTS=" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8089 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false "
rafraîchir le patch et la pop:
hg qrefresh
hg qpop
Créer un nouveau patch pour la gelée:
hg qnew jelly.patch
modifié le fichier comme suit:
JELLY_OPTS=" -Djira.jelly.on=true "
rafraîchi le patch:
hg qrefresh
Mais encore une fois, quand j'ai essayé de qpush le jmx.patch au-dessus du jelly.patch nouvellement créé, il y avait des conflits.
je pensais Mercurial se comporte comme prévu, mais je me demande si je peux structurer les patchs que je fais différemment afin qu'ils puissent appliquer individuellement ou combinés sans rejet