[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RFR] wml://devel/website/using_git.wml



Hola:

Adjunto la página traducida.

Un saludo,

Rafa.

#use wml::debian::template title="Uso de git para manipular el código fuente del sitio web"
#use wml::debian::translation-check translation="5d080035d9ae8d0435f58853443362eb5407acaa"

<p>Git es un <a href="https://en.wikipedia.org/wiki/Version_control";>sistema de
control de versiones</a> que ayuda a gestionar el hecho de que varias personas trabajen
simultáneamente en el mismo material. Cada usuario puede tener una copia local del repositorio
principal. Las copias locales pueden estar en la misma máquina o repartidas por todo el mundo.
Los usuarios pueden modificar la copia local como deseen y, cuando el material
modificado está listo, confirmar los cambios y enviarlos al repositorio
principal.</p>

<p>Git no le permite enviar directamente los cambios si el repositorio remoto contiene
alguna modificación en la misma rama hecha con posterioridad al momento en que usted hizo su copia local.
Cuando se encuentre un conflicto de este tipo, actualice su copia local a partir del repositorio
remoto y reorganícela (<code>rebase</code>) aplicando sus cambios a partir del último cambio
confirmado en el repositorio remoto.
</p>

<h3><a name="write-access">Acceso de escritura</a></h3>

<p>
Si necesita acceso de escritura al repositorio, solicítelo a través de
la interfaz web <url https://salsa.debian.org/webmaster-team/webwml/> tras
identificarse en la plataforma Salsa de Debian.
Si no ha participado antes en el desarrollo del sitio web de Debian,
envíe también un correo electrónico a <a href="mailto:debian-www@lists.debian.org";>
debian-www@lists.debian.org</a> presentándose. Escriba
algo útil en su presentación, como en qué idioma o en qué parte del
sitio web tiene pensado trabajar y quién respondería por usted.
</p>

<h3><a name="work-on-repository">Trabajar con el repositorio</a></h3>

<h4><a name="clone-local-repo-copy">Clonado del repositorio</a></h4>

<p>Primero, necesita instalar git para trabajar con el repositorio. A continucación,
configure los detalles de su usuario y de su dirección de correo electrónico en su computadora (consulte
la documentación general de git para saber cómo hacerlo). Después, puede
clonar el repositorio (es decir, hacer una copia local del mismo)
de una de las dos maneras que describimos a continuación.</p>

<p>La forma recomendada de trabajar en webwml es registrando primero una
cuenta en salsa.debian.org y habilitando el acceso git SSH, para lo que necesita subir una
clave pública SSH a su cuenta. Vea las <a
href="https://salsa.debian.org/help/ssh/README.md";>páginas de ayuda
de Salsa</a> para más detalles sobre cómo hacer esto. Después, puede clonar el
repositorio de webwml con la orden:</p>

<pre>
   git clone git@salsa.debian.org:webmaster-team/webwml.git
</pre>

<p>Si no tiene una cuenta en Salsa, un método alternativo es
clonar el repositorio utilizando el protocolo HTTPS:</p>

<pre>
  git clone https://salsa.debian.org/webmaster-team/webwml.git
</pre>

<p>Utilizando este método obtendrá la misma copia local, pero no
podrá enviar modificaciones directamente al repositorio.</p>

<p>El clonado de todo el repository de webwml conlleva la descarga de unos
500MB de datos, lo que puede ser difícil para quien disponga de una conexión
a Internet lenta o inestable. Si es este su caso, puede probar el clonado superficial con
una profundidad mínima al principio para que la descarga inicial sea menor:</p>

<pre>
  git clone git@salsa.debian.org:webmaster-team/webwml.git --depth 1
</pre>

<p>Tras obtener un repositorio (superficial) utilizable, puede ir aumentando la profundidad de
la copia y, finalmente, convertirla en un repositorio local
completo:</p>

<pre>
  git fetch --deepen=1000 # aumenta la profundidad del repo con otros 1000 commits
  git fetch --unshallow   # descarga todos los commits que faltan, convierte el repo en un repo completo
</pre>

<h4><a name="partial-content-checkout">Contenido parcial en la copia de trabajo</a></h4>

<p>Puede crear una copia de trabajo que contenga solo un subconjunto de las páginas de la siguiente manera:</p>

<pre>
   $ git clone --no-checkout git@salsa.debian.org:webmaster-team/webwml.git
   $ cd webwml
   $ git config core.sparseCheckout true
   Cree el fichero .git/info/sparse-checkout en webwml con un contenido como el siguiente
   (si solo quiere los ficheros base, las páginas en inglés y las traducciones a catalán y español):
      /*
      !/[a-z]*/
      /english/
      /catalan/
      /spanish/
   Después:
   $ git checkout --
</pre>

<h4><a name="submit-changes">Envío de cambios locales</a></h4>

<p>Cada pocos días (y, desde luego, ¡antes de empezar a modificar algo!)
debería ejecutar:</p>

<pre>
   git pull
</pre>

<p>para descargar aquellos ficheros del repositorio que hayan cambiado.</p>

<p>Nota: git es un sistema de control de versiones distribuido (no
centralizado). Esto significa que, cuando confirma cambios, estos cambios solo se
almacenan en su repositorio local. Para compartirlos con otros, además,
tiene que enviar sus cambios al repositorio central alojado en Salsa.</p>

<p><strong>Por lo tanto, la modificación de algunos ficheros en inglés sería algo así:</strong></p>

<pre>
   $ git pull
</pre>

<p>Ahora haga las modificaciones en los ficheros. Cuando haya terminado, confirme los cambios
en su repositorio local con:</p>

<pre>
   $ git add ruta/al(os)/fichero(s)
   $ git commit -m "Su mensaje para este commit"
</pre>

<p>A continuación, envíe los cambios al repo de Salsa:</p>

<pre>
   $ git push
</pre>

<p>Este es un resumen muy básico de cómo usar git para manipular el
código fuente del sitio web de Debian. Para más información, consulte
la documentación de git.</p>

### FIXME: Is the following still true? holgerw
### FIXME: Seems not true anymore. Needs fixup. -- hosiet-guest
<h4><a name="closing-debian-bug-in-git-commits">Cierre de bugs de Debian en commits git</a></h4>

<p>
Si incluye el texto <code>Closes: #</code><var>nnnnnn</var> en la entrada del historial de confirmaciones correspondiente a
su commit, el bug número <code>#</code><var>nnnnnn</var> se cerrará
cuando envíe los cambios. El formato preciso de esto es el mismo que
<a href="$(DOC)/debian-policy/footnotes.html#f17">en las normas de Debian</a>.</p>

<h4><a name="links-using-http-https">Uso de HTTP/HTTPS en los enlaces</a></h4>

<p>Muchos sitos web de Debian soportan SSL. Use enlaces HTTPS cuando sea
posible y razonable. <strong>Sin embargo</strong>, algunos
sitios web de Debian/DebConf/SPI/etc, o bien no tienen soporte HTTPS,
o bien utilizan solo la autoridad certificadora de SPI (y no una autoridad certificadora SSL en la que confían todos los navegadores). Para
evitar que los usuarios no pertenecientes a Debian obtengan mensajes de error, no incluya enlaces
a esos sitios utilizando HTTPS.</p>

<p>El repositorio git rechazará tanto los commits que contengan enlaces HTTP
a los sitios web de Debian que soportan HTTPS como los que contengan enlaces HTTPS a
los sitios web de Debian/DebConf/SPI que se sabe que, o bien no soportan
HTTPS, o bien usan certificados firmados únicamente por SPI.</p>

<h3><a name="translation-work">Trabajo con traducciones</a></h3>

<p>Si modifica ficheros traducidos, tiene que actualizar la
cabecera translation-check para que coincida con el hash del commit git de la
modificación correspondiente en el fichero en inglés. Puede obtener dicho hash
con:</p>

<pre>
$ git log ruta/al/fichero/en/inglés
</pre>

<p>Si hace una traducción nueva de un fichero, utilice el script <q>copypage.pl</q>.
Este script creará una plantilla para su idioma, incluyendo la cabecera
translation correcta.</p>

<h3><a name="translation-smart-change">Modificación de traducciones con smart_change.pl</a></h3>

<p><code>smart_change.pl</code> es un script diseñado para facilitar
la actualización, de forma conjunta, de ficheros originales y de sus traducciones. Hay
dos maneras de usarlo, dependiendo de los cambios que esté haciendo.</p>

<p>Para utilizar <code>smart_change</code> con el único fin de actualizar las cabeceras
translation-check cuando está trabajando manualmente en los ficheros:</p>

<ol>
  <li>Haga los cambios al fichero o ficheros originales, y confírmelos.</li>
  <li>Actualice las traducciones.</li>
  <li>Ejecute smart_change.pl. El script recogerá los cambios y actualizará
    las cabeceras de los ficheros traducidos.</li>
  <li>Revise los cambios (por ejemplo, con «git diff»).</li>
  <li>Confirme los cambios de las traducciones.</li>
</ol>

<p>O para utilizar smart_change con una expresión regular para hacer
varios cambios en ficheros en una única pasada:</p>

<ol>
  <li>Ejecute <code>smart_change.pl -s s/FOO/BAR/ fich-orig-1 fich-orig-2 ...</code></li>
  <li>Revise los cambios (por ejemplo, con <code>git diff</code>).
  <li>Confirme los cambios en el fichero o ficheros originales.</li>
  <li>Ejecute <code>smart_change.pl fich-orig-1 fich-orig-2</code>
    (esta vez <strong>sin la expresión regular</strong>). Ahora
    solo actualizará las cabeceras de los ficheros traducidos.</li>
  <li>Finalmente, confirme los cambios de las traducciones.</li>
</ol>

<p>Es más laborioso que antes (necesita dos confirmaciones), pero
resulta inevitable debido a la manera en que funcionan los hashes de los commits en git.</p>

<h3><a name="notifications">Obtener notificaciones</a></h3>

<p>Hemos configurado el proyecto webwml en Salsa de forma que las confirmaciones se
muestren en el canal IRC #debian-www.</p>

<p>Si quiere recibir notificaciones por correo electrónico cuando se hagan
confirmaciones en el repo de webwml, suscríbase al pseudopaquete
<q>www.debian.org</q> por medio de tracker.debian.org y active allí la palabra clave
<q>vcs</q> siguiendo estos pasos (solo una vez):</p>

<ul>
  <li>Abra un navegador web y vaya a <url https://tracker.debian.org/pkg/www.debian.org></li>
  <li>Suscríbase al pseudopaquete <q>www.debian.org</q>. (Puede identificarse
      mediante SSO o registrar una dirección de correo electrónico y contraseña, si no estaba usando
      ya tracker.debian.org para otros fines).</li>
  <li>Vaya a <url https://tracker.debian.org/accounts/subscriptions/>, después a <q>modify
      keywords</q>, marque <q>vcs</q> (si no está ya marcado) y grabe los cambios.</li>
  <li>A partir de este momento recibirá correos electrónicos cuando alguien confirme cambios en el
      repo de webwml. Pronto añadiremos los demás repositorios del equipo webmaster-team.</li>
</ul>

Attachment: signature.asc
Description: PGP signature


Reply to: