Introducción: Drupal 8 Version Control & Subversion (SVN)

Estas Tutorial muestra cómo a. transmite Drupal 8 Sitio web desde un entorno localhost en ejecución WampServer a una plataforma de hosting remoto con Subversión (SVN) para el control de versiones. Subversión (SVN) es una alternativa a Git y CVS que se usa en Ágil Equipos.

Drupal 8 Los desarrolladores pueden utilizar el CMS localmente en un entorno de desarrollo con una opción de MySQL,PostgreSQL, o MariaDB estándar con WampServer.

Subversión (SVN) se utiliza para cargar archivos en un espacio aislado remoto, un repositorio de código y un sitio de producción utilizando este manual con instrucciones para la gestión de temas y módulos.

Paso 1: Instale SVN en la tubería de desarrollo de Drupal 8

Ser efectivo Control de versiones Estándar para Drupal 8 Desarrollo, Subversión (SVN) debe instalarse en las estaciones de trabajo de escritorio / portátiles de los programadores y en los servidores web que alojan los archivos. Una opción profesional es:

  • CloudForge: combina herramientas de gestión de proyectos y control de versiones.

Sin una plataforma de utilidad, SVN se puede instalar en servidores web localhost con Drupal 8 como WampServer, VirtualBox, Docker Desktop, XAMPP o Apache Netbeans.

Archivos requeridos – descargar:

  • Subversión CollabNet: (Descargar archivos)
  • Apache Subversion: (Descargar archivos)

CollabNet también tiene subversión distribuciones disponibles que se pueden encontrar en el Eclipse y Visual Studio Suites para desarrolladores. La licencia Professional cuesta aproximadamente $ 2 por usuario al mes.

Para sincronizar con estaciones de trabajo de programación para el control de versiones, subversión debe estar instalado en el servidor web. Muchos equipos utilizan un subdominio de desarrollo.

Configure un subdominio de desarrollo para pruebas de código, sandboxing y pruebas de código en dev.tudominio.com que actuará como un repositorio central para todos Ágil Se enviaron cambios en el código del equipo.

Clone los archivos del sitio de producción al subdominio dev y use los archivos ZIP / GZIP para distribuir una versión estandarizada del Drupal 8 Instalación básica con MySQL Archivo.

Utilizando Sudo En Ubuntu, CentOS, RHEL, etc., ejecute el siguiente comando:

sudo apt-get install subversion-tools

En Gentoo, ChromeOS y otros servidores del SO Linux que se ejecutan Porteo:

emerge subversion

o

emerge -av subversion

A continuación, establezca una ruta a una carpeta para. firmemente SVN para ser utilizado como un archivo de caché para transferencias:

my $svn = '/usr/bin/svn';

De lo contrario con Porteo, Correr:

emerge --config dev-util/subversion

Luego, ejecute los siguientes dos comandos para copiar archivos al directorio:

sudo cp svn_load_dirs.pl.in /usr/bin/svn_load_dirs
sudo cp svnmerge.py /usr/bin/svnmerge

Después, subversión se instalará correctamente y se configurará para su uso con Control de versiones Software. subversión también se puede utilizar para descargar Drupal 8 Core, Module y Themes con las utilidades de línea de comandos empaquetadas en una apache Servidor web.

Paso 2: use Subversion para instalar archivos Drupal 8 Core

Después de la instalación subversión & Configurando la ruta del repositorio principal, la línea de comando se puede usar para descargar e instalar Drupal 8 Archivos principales, similares a Drush o compositor.

Crea una carpeta temporal y usa wget para descargar la última Drupal 8 Archivos:

$cd /tmp
$ wget  https://ftp.drupal.org/files/projects/drupal-8.6.3.tar.gz
$ tar xzf drupal-8.6.3.tar.gz

abrir phpMyAdmin y crea uno nuevo MySQL Base de datos para el Drupal 8 Instalación. Dé a la base de datos un nombre único, una contraseña y un usuario con todos los permisos.

Copie la base de datos de un entorno de desarrollo local al subdominio para alojar el entorno de ensayo utilizando el Hacer copia de seguridad y migrar Módulo de portabilidad de archivos (enlace).

Paso 3: crea un nuevo proyecto en el servidor de desarrollo

En el subdominio de ensayo o en un entorno de desarrollo local subversión se puede utilizar para crear un nuevo proyecto a partir de los archivos del servidor de producción del Drupal 8 Instalación.

Primero, cree un nuevo proyecto en un tmp Directorio con una etiqueta de rama única en el tronco:

mkdir -p ~/svn-import/{branches,tags,trunk}

A continuación, complete el directorio copiando todos los archivos de origen en la carpeta troncal:

cp -R /my/path/to/project/* ~/svn-import/trunk

Finalmente, importe el proyecto directamente desde los archivos fuente:

svn import -m "Development server" ~/svn-import https://example.com/svn/REPO_NAME/

Utilice estos comandos con subversión, el tiempo que se tarda en crear nuevos Drupal 8 Los entornos de desarrollo en hardware de nube híbrida o de múltiples nubes se completan en segundos. Las transferencias de archivos se pueden acelerar mediante zip / gzip transferido a estaciones de trabajo locales.

Paso 4: configurar los archivos del servidor web Apache y SSL

Compruebe la configuración en el apache Archivos de servidor para subversión. Haciendo httpd.conf El archivo se encuentra en: /etc/httpd/conf/httpd.conf Asegúrese de que se enumeren todos los valores que se enumeran a continuación:

LoadModule dav_module           modules/mod_dav.so
LoadModule dav_fs_module        modules/mod_dav_fs.so
LoadModule dav_svn_module       modules/mod_dav_svn.so
LoadModule authz_svn_module     modules/mod_authz_svn.so

A continuación, utilice el Apache AuthType Basic Estándar para generar un Certificado SSL hacia subversión para usar en transferencias de archivos y comunicación en equipo:

#cd /etc/httpd/conf/
# openssl req -new -x509 -keyout server.key -out server.crt -days 365 -nodes

Agrega un Política de host virtual a: /etc/httpd/conf/extra/httpd-ssl.conf (o usar: /etc/httpd/conf/extra/httpd-vhosts.conf si no se requiere SSL):

<Location /svn>
   DAV svn
   SVNParentPath /home/svn/repositories
   AuthzSVNAccessFile /home/svn/.svn-policy-file
   AuthName "SVN Repositories"
   AuthType Basic
   AuthUserFile /home/svn/.svn-auth-file
   Require valid-user
</Location>

Finalmente edite el httpd.conf Archivo para leer:

LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include /etc/httpd/conf/extra/httpd-ssl.conf

La apache El servidor web ahora está configurado para admitir subversión para los requisitos de control de versiones a lo largo del ciclo de vida de producción del software. Drupal 8 Los administradores también pueden utilizar herramientas de gestión de proyectos como CloudForge, Netbeans, o oscuridad para una integración más eficiente de subversión en entornos de múltiples nubes.

Paso 5: Otros comandos importantes de Subversion

Hay muchos comandos más poderosos para usar subversión gestionar Drupal 8 Sitio web o servidor, es decir, a través de utilidades CLI como PuTTY, SSH, scripts bash y acceso al shell.

Cree un nuevo directorio para repositorios SVN:

mkdir -p /home/svn/repositories

Para hacer un análisis de archivo de diferencias:

svn diff

o

svn diff path/to/sites/all/modules/project/file.ext

Aplique una conversión de línea de diferencia a través de un nuevo archivo de parche:

patch -p0 < patch/path/to/file

Ignore los archivos SVN:

svnpropeditsvn:ignore mydirectory

Claro:

svn delete file.name

Moverse:

svn mv file1 file2

Regresar:

svn revert file.name

Estado:

svn status

Obligaciones:

svn commit

Actualizar:

svn update

Más información sobre el uso subversión hacia Control de versiones Y Drupal 8 El desarrollo se puede encontrar en los siguientes recursos:

  • Control de versiones con Subversion
  • Guía del usuario de Apache Subversion
  • Manual de ArchLinux Subversion
  • Conceptos básicos de Gentoo Subversion
  • Drupal y Subversion

Subversión (SVN) se ha convertido en un estándar web global para Control de versiones en equipos de desarrollo de software, especialmente para aplicaciones web y móviles en Ágil / Scrum Metodología.

Conclusión: control de versiones SVN rico en funciones frente a Git

subversión es una poderosa utilidad de control de versiones de línea de comandos para equipos de programación basada en Linux, Mac y Windows, pero es superado con creces por Git en la práctica.

Si bien es posible que algunos equipos todavía lo estén usando subversión en el entorno profesional para Drupal 8 Desarrollo, se recomienda utilizar la mayoría Git encima SVN para nuevos proyectos.

Asignaturas:Drupal 8, WampServer, Subversion, control de versiones, ágil, desarrollo web
Nivel:Medio

Hora:10 minutos