FAQ Desarrolladores: Difference between revisions

Jump to navigation Jump to search
Line 210: Line 210:
He aquí el ''método Pro'' de como trabajar para poder generar un fichero patch:
He aquí el ''método Pro'' de como trabajar para poder generar un fichero patch:


- Tener una carpeta con la versión de referencia Dolibarr (resultante de la actualización desde CVS o bien el resultante de la descompresión de un snapshot tgz de Dolibarr). Llamaremos a esta carpeta '''viejo_rep'''. Puede recuperar el snapshot de la versión de desarrollo en curso en  [http://www.dolibarr.org/component/option,com_docman/task,cat_view/gid,50/Itemid,36/lang,en/ web ofical de Dolibarr].
- Tener un directorio con la versión de referencia Dolibarr (resultante de la actualización desde CVS o bien el resultante de la descompresión de un snapshot tgz de Dolibarr). Llamaremos a este directorio '''viejo_rep'''. Puede recuperar el snapshot de la versión de desarrollo en curso en  [http://www.dolibarr.org/component/option,com_docman/task,cat_view/gid,50/Itemid,36/lang,en/ web ofical de Dolibarr].


- Tener otra carpeta que contiene Dolibarr pero en la que realiza o ha realizado sus modificaciones. Llamará a esta carpeta '''nuevo_rep'''.
- Tener otro directorio que contiene Dolibarr pero en la que realiza o ha realizado sus modificaciones. Llamará a este directorio '''nuevo_rep'''.


para generar el fichero patch, deberá ejecutar el comando '''diff''' (estándard de Linux, en windows [http://www.cygwin.org/cygwin cygwin]) de la siguiente manera:
para generar el fichero patch, deberá ejecutar el comando '''diff''' (estándard de Linux, en windows [http://www.cygwin.org/cygwin cygwin]) de la siguiente manera:
<source lang="bash">
<source lang="bash">
diff -BNaur --exclude=CVS --exclude=".#*" --exclude="*~" --exclude='*.rej' --exclude='*.orig'
diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej"
--exclude="*.bak" --exclude=conf.php --exclude=documents  ancien_rep  nouveau_rep > fichier.patch
    --exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents   
    viejo_rep nuevo_rep > mypatch.patch
</source>
</source>
En el directorio '''build/patch''' se encuentra disponible un script ksh que realiza este comando.
Envíe su parche a la Lista de Correo.
Envíe su parche a la Lista de Correo.
la integración de su parche no está garantizada, pero si el parche ha sido realizado siguiendo rigurosamente este procedimiento, tiene muchas posibilidades de que sea testeado (de otro modo las posibilidades estarán cercanas a 0).
la integración de su parche no está garantizada, pero si el parche ha sido realizado siguiendo rigurosamente este procedimiento, tiene muchas posibilidades de que sea testeado (de otro modo las posibilidades estarán cercanas a 0).
Line 231: Line 233:


''Testear/Aplicar un patch''
''Testear/Aplicar un patch''
 
Para aplicar un archivo patch en una versión no modificada, con el fin de integrar las modificaciones contenidas en el archivo patch, puede usar la herramienta '''patch'''.
Si su parche todavía no se ha aplicado, pero usted quiere que la aplicación en su servidor esté actualizada desde el CVS, podrá aplicarlo desde la utilidad patch.
Imaginemos que tiene un directorio de fuentes de una versión no modificada de Dolibarr en un servidor. Para aplicar el patch, colóquelo en el direcotrio raíz de Dolibarr y lance el comando
 
Asumiendo que ha creado el parche desde la carpeta htdocs de su copia local modificada de la versión CVS original, y que ha enviado el parche (mifichero.patch) al servidor, a su carpeta patchs, situado al mismo nivel que su carpeta htdocs, el siguiente comando debería realizar el proceso (ejecutado desde la carpeta patchs):
<source lang="bash">
<source lang="bash">
patch -u -p0 -d ../htdocs < mifichero.patch
patch -u -p0 -d . < monfichier.patch
</source>
</source>
<nowiki>Información: -p0 permite utilizar la ruta completa tal como se indica dentro en el parche (-pn retirando los n primeros niveles del árbol de directorios)
<nowiki>Información: -p0 permite utilizar la ruta completa tal como se indica dentro en el parche para encontrar los archivos a modificar (-pn retirando los n primeros niveles del árbol de directorios)
-d permite precisar la ruta relativa de la carpeta htdocs a parchear.
-d permite precisar la ruta relativa de la carpeta htdocs a parchear.
< permite indicar la ruta hacia el fichero fuente a utilizar (el patch en modo unificado)
< permite indicar la ruta hacia el fichero fuente a utilizar (el patch en modo unificado)

Navigation menu