Primero que todo debes tener instalado git en tu equipo, una cuenta en https://github.com/ y debes iniciar sesión.
-
Ir al repositorio del framework: https://github.com/KumbiaPHP/KumbiaPHP
-
Hacer clic en el botón "fork", esto creará en tu cuenta una copia completa del repositorio.
Esto nos permitirá trabajar de manera local con el fork que acabamos de realizar, así nos aseguramos por ejemplo de no cambiar nada directamente y estropearlo todo.
-
Copiar la URL que aparece al darle clic al botón "Clone or download".
-
Ir a una terminal y ejecutar el comando:
git clone https://github.com/tuusuario/KumbiaPHP.git
-
Entrar a la carpeta KumbiaPHP
cd KumbiaPHP
-
Especificar el remote upstream con el cual se sincronizarán los cambios con el comando:
git remote add upstream https://github.com/KumbiaPHP/KumbiaPHP.git
-
Verificar que se haya asignado el remote upstream a nuestra copia con el comando:
git remote -v
origin https://github.com/tuusuario/KumbiaPHP.git (fetch)
origin https://github.com/tuusuario/KumbiaPHP.git (push)
upstream https://github.com/KumbiaPHP/KumbiaPHP.git (fetch)
upstream https://github.com/KumbiaPHP/KumbiaPHP.git (push)
- Pasate la rama de la versión 2:
git checkout v2
Ejecuta los siguientes comandos en la terminal:
-
Para modificar el correo electrónico:
git config user.email "tucorreo@gmail.com"
-
Para modificar el nombre de usuario:
git config user.name "Tu Nombre"
La idea es enviar Pull Requests con la mínima cantidad de archivos modificados para que sean más fáciles de mezclar, por lo tanto se crearan las ramas que se requieran en local y en tu repositorio y desde cada una de estas se enviará un Pull Request, vamos con ejemplo:
-
Selecciona y anuncia en el chat de Slack una sección del core que vas a modificar, por ejemplo los helpers:
core/extensions/helpers
-
Asegurate que estás en la rama de la versión:
git checkout v2
- Crea la rama siguiendo la convención
translate/foler_name_XXXX
, donde XXXX puede ser un consecutivo personal, para nuestro ejemplo sería:
git checkout -b translate/helpers_0001
- Ahora supongamos que realizas la traducción de los archivos
ajax.php
ycss.php
, los agregas uno por uno:
git add core/extensions/helpers/ajax.php
git commit -m "Transalte PHPDoc Ajax helper"
git add core/extensions/helpers/css.php
git commit -m "Transalte PHPDoc Css helper"
A tu criterio estima la cantidad máxima de archivos y cambios que veas que son fáciles de mezclar.
- Sube los cambios a tu repositorio en Github:
git push origin translate/helpers_0001
-
Ve a tu repositorio en Github.com y haz clic en el botón "New pull request".
-
Asegurate que esté seleccionado en
Base repository
la ramav2
de KumbiaPHP -
Asegurate que esté seleccionado para este ejemplo en
Head repository
la ramatranslate/helpers_0001
de tu fork de KumbiaPHP -
Escibe un titulo para el request y un mensaje claro de la solicitud.
-
Clic en el botón "Create pull request".
-
Ya solo queda esperar que alguien del core lo autorice e integre los cambios.
Si la copia de nuestro repositorio no es reciente, es probable que el equipo de desarrollo haya añadido cambios al código del repositorio oficial, por esto es importante mantener sincronizada nuestra copia antes de que empecemos a trabajar en algo nuevo o antes de subir los cambios.
-
Obtener las ramas y sus respectivos commits del repositorio 'upstream':
git fetch upstream
-
Asegurarse de estar en la rama de la versión 2:
git checkout v2
-
Mezclar los cambios de upstream/v2 dentro de tu rama local de desarrollo. Esto hará que tu rama de la versión 2 se sincronice con el repositorio oficial, sin perder los cambios locales:
git merge upstream/v2