Mercurial > hgbook
comparison es/collab.tex @ 619:bbc5db74bd77
changed many "X(" for "X ("
I did this only when inside the main text
author | Javier Rojas <jerojasro@devnull.li> |
---|---|
date | Sun, 18 Jan 2009 22:31:20 -0500 |
parents | 3f32047a3f25 |
children | 4af39acbb3cf |
comparison
equal
deleted
inserted
replaced
618:a529952fce96 | 619:bbc5db74bd77 |
---|---|
12 Mercurial tiene una poderosa interfaz web que provee bastantes | 12 Mercurial tiene una poderosa interfaz web que provee bastantes |
13 capacidades útiles. | 13 capacidades útiles. |
14 | 14 |
15 Para uso interactivo, la interfaz le permite visualizar uno o varios | 15 Para uso interactivo, la interfaz le permite visualizar uno o varios |
16 repositorios. Puede ver el historial de un repositorio, examinar cada | 16 repositorios. Puede ver el historial de un repositorio, examinar cada |
17 cambio(comentarios y diferencias), y ver los contenidos de cada | 17 cambio (comentarios y diferencias), y ver los contenidos de cada |
18 directorio y fichero. | 18 directorio y fichero. |
19 | 19 |
20 Adicionalmente la interfaz provee feeds de RSS de los cambios de los | 20 Adicionalmente la interfaz provee feeds de RSS de los cambios de los |
21 repositorios. Que le permite ``subscribirse''a un repositorio usando | 21 repositorios. Que le permite ``subscribirse''a un repositorio usando |
22 su herramienta de lectura de feeds favorita, y ser notificado | 22 su herramienta de lectura de feeds favorita, y ser notificado |
363 entonces un URL ssh que contenga en su ruta a \dirname{bar} | 363 entonces un URL ssh que contenga en su ruta a \dirname{bar} |
364 \emph{realmente} se refiere al directorio \dirname{/home/foo/bar}. | 364 \emph{realmente} se refiere al directorio \dirname{/home/foo/bar}. |
365 | 365 |
366 Si desea especificar una ruta relativa a otro directorio de usuario, | 366 Si desea especificar una ruta relativa a otro directorio de usuario, |
367 puede usar una ruta que comience con un caracter tildado, seguido del | 367 puede usar una ruta que comience con un caracter tildado, seguido del |
368 nombre del usuario(llamémosle \texttt{otrousuario}, así | 368 nombre del usuario (llamémosle \texttt{otrousuario}, así |
369 \begin{codesample2} | 369 \begin{codesample2} |
370 ssh://server/~otrousuario/hg/repo | 370 ssh://server/~otrousuario/hg/repo |
371 \end{codesample2} | 371 \end{codesample2} |
372 | 372 |
373 Y si realmente desea especifica una ruta \emph{absoluta} en el | 373 Y si realmente desea especifica una ruta \emph{absoluta} en el |
423 el protocolo ssh para tareas automatizadas en una red segura.) | 423 el protocolo ssh para tareas automatizadas en una red segura.) |
424 | 424 |
425 No basta con generar un par de llaves. Se requiere adicionar una llave | 425 No basta con generar un par de llaves. Se requiere adicionar una llave |
426 pública al conjunto de llaves autorizadas para todos los usuarios | 426 pública al conjunto de llaves autorizadas para todos los usuarios |
427 remotos que se vayan a autenticar. Para aquellos servidores que usen | 427 remotos que se vayan a autenticar. Para aquellos servidores que usen |
428 OpenSSH(la gran mayoría), significará añadir la llave pública a la | 428 OpenSSH (la gran mayoría), significará añadir la llave pública a la |
429 lista en el fichero llamado \sfilename{authorized\_keys} en su | 429 lista en el fichero llamado \sfilename{authorized\_keys} en su |
430 directorio \sdirname{.ssh}. | 430 directorio \sdirname{.ssh}. |
431 | 431 |
432 En sistemas tipo Unix, su llave pública tendrá la extensión | 432 En sistemas tipo Unix, su llave pública tendrá la extensión |
433 \filename{.pub}. Si usa \command{puttygen} en Windows, puede | 433 \filename{.pub}. Si usa \command{puttygen} en Windows, puede |
436 \sfilename{authorized\_keys}. | 436 \sfilename{authorized\_keys}. |
437 | 437 |
438 \subsection{Uso de un agente de autenticación} | 438 \subsection{Uso de un agente de autenticación} |
439 | 439 |
440 Un agente de autentitcación es un daemonio que almacena frases clave en | 440 Un agente de autentitcación es un daemonio que almacena frases clave en |
441 memoria(olvidará las frases clave si sale y vuelve a entrar). Un cliente | 441 memoria (olvidará las frases clave si sale y vuelve a entrar). Un cliente |
442 ssh notará si está corriendo, y solicitará una frase clave. Si no hay | 442 ssh notará si está corriendo, y solicitará una frase clave. Si no hay |
443 un agente de autenticación corriendo, o el agente no almacena la frase | 443 un agente de autenticación corriendo, o el agente no almacena la frase |
444 clave necesaria, tendrá que teclear su frase clave cada vez que | 444 clave necesaria, tendrá que teclear su frase clave cada vez que |
445 Mercurial intente comunicarse con un servidor para usted(p.e.~cada vez | 445 Mercurial intente comunicarse con un servidor para usted (p.e.~cada vez |
446 que jale o publique cambios). | 446 que jale o publique cambios). |
447 | 447 |
448 El problema de almacenar frases claves en un agente es que es posible | 448 El problema de almacenar frases claves en un agente es que es posible |
449 para un atacante bien preparado recuperar el texto plano de su frase | 449 para un atacante bien preparado recuperar el texto plano de su frase |
450 clave, en alguntos casos incluso si su sistema sea muy alternante. | 450 clave, en alguntos casos incluso si su sistema sea muy alternante. |
494 En resumen, si tiene problemas al comunicarse con el daemonio ssh del | 494 En resumen, si tiene problemas al comunicarse con el daemonio ssh del |
495 servidor, primero asegúrese de que está corriendo. En muchos sistemas | 495 servidor, primero asegúrese de que está corriendo. En muchos sistemas |
496 estará instalado, pero deshabilitado de forma predeterminada. Una vez | 496 estará instalado, pero deshabilitado de forma predeterminada. Una vez |
497 que haya hecho este paso tendrá que revisar si el cortafuegos del | 497 que haya hecho este paso tendrá que revisar si el cortafuegos del |
498 servidor está configurado para recibir conexiones entrantes en el | 498 servidor está configurado para recibir conexiones entrantes en el |
499 puerto en el cual el daemonio de ssh está escuchando(usualmente el~22). | 499 puerto en el cual el daemonio de ssh está escuchando (usualmente el~22). |
500 No trate de buscar otras posibilidades exóticas o configuraciones | 500 No trate de buscar otras posibilidades exóticas o configuraciones |
501 erradas haste que haya revisado primero estas dos. | 501 erradas haste que haya revisado primero estas dos. |
502 | 502 |
503 Si está usando un agente de autenticación en el lado del cliente para | 503 Si está usando un agente de autenticación en el lado del cliente para |
504 almacenar las frase claves de sus contraseñas, debería poder entrar al | 504 almacenar las frase claves de sus contraseñas, debería poder entrar al |
584 Mercurial no comprime datos cuando usa el protocolo ssh, dado que | 584 Mercurial no comprime datos cuando usa el protocolo ssh, dado que |
585 el protocolo puede comprimir datos transparentemente. Pero el | 585 el protocolo puede comprimir datos transparentemente. Pero el |
586 comportamiento predeterminado del cliente ssh es \emph{no} | 586 comportamiento predeterminado del cliente ssh es \emph{no} |
587 solicitar compresión. | 587 solicitar compresión. |
588 | 588 |
589 Sobre cualquier red distinta a una LAN rápida(incluso con una red | 589 Sobre cualquier red distinta a una LAN rápida (incluso con una red |
590 inalámbrica), hacer uso de compresión puede mejorar el rendimiento | 590 inalámbrica), hacer uso de compresión puede mejorar el rendimiento |
591 de las operaciones de Mercurial que involucren la red. Por ejemplo, | 591 de las operaciones de Mercurial que involucren la red. Por ejemplo, |
592 sobre WAN, alguien ha medido la compresión reduciendo la cantidad | 592 sobre WAN, alguien ha medido la compresión reduciendo la cantidad |
593 de tiempo requerido para clonar un repositorio particularmente | 593 de tiempo requerido para clonar un repositorio particularmente |
594 grande de~51 minutos a~17 minutos. | 594 grande de~51 minutos a~17 minutos. |
602 ssh = ssh -C | 602 ssh = ssh -C |
603 \end{codesample2} | 603 \end{codesample2} |
604 | 604 |
605 Si usa \command{ssh}, puede reconfigurarlo para que siempre use | 605 Si usa \command{ssh}, puede reconfigurarlo para que siempre use |
606 compresión cuando se comunique con su servidor. Para hacerlo, | 606 compresión cuando se comunique con su servidor. Para hacerlo, |
607 edite su fichero \sfilename{.ssh/config}(que puede no existir | 607 edite su fichero \sfilename{.ssh/config} (que puede no existir |
608 aún), de la siguiente forma: | 608 aún), de la siguiente forma: |
609 \begin{codesample2} | 609 \begin{codesample2} |
610 Host hg | 610 Host hg |
611 Compression yes | 611 Compression yes |
612 HostName hg.ejemplo.com | 612 HostName hg.ejemplo.com |
758 en su configuración de Apache, la directiva a revisar es \texttt{Options}. | 758 en su configuración de Apache, la directiva a revisar es \texttt{Options}. |
759 Adicione \texttt{ExecCGI} al final de esta lista en caso de que haga | 759 Adicione \texttt{ExecCGI} al final de esta lista en caso de que haga |
760 falta y reinicie su servidor web. | 760 falta y reinicie su servidor web. |
761 | 761 |
762 Si resulta que Apache le muestra el texto del script CGI en lugar de | 762 Si resulta que Apache le muestra el texto del script CGI en lugar de |
763 ejecutarlo, necesitará o bien descomentar(si se encuentra presente) o | 763 ejecutarlo, necesitará o bien descomentar (si se encuentra presente) o |
764 adicionar una directiva como la siguiente: | 764 adicionar una directiva como la siguiente: |
765 \begin{codesample2} | 765 \begin{codesample2} |
766 AddHandler cgi-script .cgi | 766 AddHandler cgi-script .cgi |
767 \end{codesample2} | 767 \end{codesample2} |
768 | 768 |
796 con Apache, muchos de los cuáles no son específicos del servidor. Por | 796 con Apache, muchos de los cuáles no son específicos del servidor. Por |
797 lo tanto estaba seguro de que mis permisos para directorios y ficheros | 797 lo tanto estaba seguro de que mis permisos para directorios y ficheros |
798 eran correctos y que mi guión \sfilename{hgweb.cgi} también lo era. | 798 eran correctos y que mi guión \sfilename{hgweb.cgi} también lo era. |
799 | 799 |
800 Dado que ya Apache estaba en ejecución correctamente, lograr que | 800 Dado que ya Apache estaba en ejecución correctamente, lograr que |
801 \texttt{lighttpd} sirviera mi repositorio fue rápido(en otras | 801 \texttt{lighttpd} sirviera mi repositorio fue rápido (en otras |
802 palabras, si está tratando de usar \texttt{lighttpd}, debe leer la | 802 palabras, si está tratando de usar \texttt{lighttpd}, debe leer la |
803 sección de Apache). Primero tuve que editar la sección | 803 sección de Apache). Primero tuve que editar la sección |
804 \texttt{mod\_access} para habilitar \texttt{mod\_cgi} y | 804 \texttt{mod\_access} para habilitar \texttt{mod\_cgi} y |
805 \texttt{mod\_userdir}, los cuales estaban inhabilitados en mi | 805 \texttt{mod\_userdir}, los cuales estaban inhabilitados en mi |
806 instalación predeterminada. Añadí posteriormente unas líneas al final | 806 instalación predeterminada. Añadí posteriormente unas líneas al final |
928 lograrlo adicione un \rcitem{web}{allow\_archive} a la sección \rcsection{web} | 928 lograrlo adicione un \rcitem{web}{allow\_archive} a la sección \rcsection{web} |
929 de su fichero \hgrc. | 929 de su fichero \hgrc. |
930 | 930 |
931 \subsection{Opciones de configuración en Web} | 931 \subsection{Opciones de configuración en Web} |
932 | 932 |
933 Las interfaces web de Mercurial(la orden \hgcmd{serve}, y los guiones | 933 Las interfaces web de Mercurial (la orden \hgcmd{serve}, y los guiones |
934 \sfilename{hgweb.cgi} y \sfilename{hgwebdir.cgi}) tienen varias | 934 \sfilename{hgweb.cgi} y \sfilename{hgwebdir.cgi}) tienen varias |
935 opciones de configuración para establecer. Todas ellas en la sección | 935 opciones de configuración para establecer. Todas ellas en la sección |
936 \rcsection{web}. | 936 \rcsection{web}. |
937 \begin{itemize} | 937 \begin{itemize} |
938 \item[\rcitem{web}{allow\_archive}] Determina cuáles tipos de ficheros | 938 \item[\rcitem{web}{allow\_archive}] Determina cuáles tipos de ficheros |
961 \item[\rcitem{web}{allowpull}] Booleano. Determina si la interfaz web | 961 \item[\rcitem{web}{allowpull}] Booleano. Determina si la interfaz web |
962 permite a los usuarios remotos emplear \hgcmd{pull} y \hgcmd{clone} | 962 permite a los usuarios remotos emplear \hgcmd{pull} y \hgcmd{clone} |
963 sobre el repositorio~HTTP. Si se coloca \texttt{no} o | 963 sobre el repositorio~HTTP. Si se coloca \texttt{no} o |
964 \texttt{false}, solamente la porción de los procesos | 964 \texttt{false}, solamente la porción de los procesos |
965 ``orientados-a-humanos'' se habilita de la interfaz web. | 965 ``orientados-a-humanos'' se habilita de la interfaz web. |
966 \item[\rcitem{web}{contact}] Cadena. Una cadena en forma libre(pero | 966 \item[\rcitem{web}{contact}] Cadena. Una cadena en forma libre (pero |
967 preferiblemente corta) que identifica a la persona o grupo a cargo | 967 preferiblemente corta) que identifica a la persona o grupo a cargo |
968 del repositorio. Usualmente contiene el nombre y la dirección de | 968 del repositorio. Usualmente contiene el nombre y la dirección de |
969 correo electrónico de una persona o de una lista de correo. Aveces | 969 correo electrónico de una persona o de una lista de correo. Aveces |
970 tiene sentido colocar esta opción en el fichero \sfilename{.hg/hgrc} | 970 tiene sentido colocar esta opción en el fichero \sfilename{.hg/hgrc} |
971 del repositorio, pero en otras oportunidades en el \hgrc\ global si | 971 del repositorio, pero en otras oportunidades en el \hgrc\ global si |
1003 Ciertas opciones de configuración de \rcsection{web} deben estar | 1003 Ciertas opciones de configuración de \rcsection{web} deben estar |
1004 ubicadas en el \sfilename{.hg/hgrc} de un repositorio en lugar del | 1004 ubicadas en el \sfilename{.hg/hgrc} de un repositorio en lugar del |
1005 fichero del usuario o el \hgrc global. | 1005 fichero del usuario o el \hgrc global. |
1006 \begin{itemize} | 1006 \begin{itemize} |
1007 \item[\rcitem{web}{description}] Cadena. Una cadena de forma | 1007 \item[\rcitem{web}{description}] Cadena. Una cadena de forma |
1008 libre(preferiblemente corta) que describa los contenidos o el | 1008 libre (preferiblemente corta) que describa los contenidos o el |
1009 propósito del repositorio. | 1009 propósito del repositorio. |
1010 \item[\rcitem{web}{name}] Cadena. El nombre para visualizar en la | 1010 \item[\rcitem{web}{name}] Cadena. El nombre para visualizar en la |
1011 interfaz web del repositorio. Sustituye el nombre predeterminado, el | 1011 interfaz web del repositorio. Sustituye el nombre predeterminado, el |
1012 cual es el último componente de la ruta del repositorio. | 1012 cual es el último componente de la ruta del repositorio. |
1013 \end{itemize} | 1013 \end{itemize} |