Haciendo un parche #
Ha descubierto un error o algo más que desea cambiar en Matplotlib ... ¡excelente!
Has descubierto una manera de solucionarlo, ¡aún mejor!
Quiere contárnoslo, ¡lo mejor de todo!
La forma más fácil es hacer un parche o un conjunto de parches. Aquí te explicamos cómo. Hacer un parche es lo más simple y rápido, pero si va a hacer algo más que cosas simples y rápidas, considere seguir el modelo de desarrollo de Git .
Hacer parches #
Resumen #
# tell git who you are
git config --global user.email [email protected]
git config --global user.name "Your Name Comes Here"
# get the repository if you don't have it
git clone https://github.com/matplotlib/matplotlib.git
# make a branch for your patching
cd matplotlib
git branch the-fix-im-thinking-of
git checkout the-fix-im-thinking-of
# hack, hack, hack
# Tell git about any new files you've made
git add somewhere/tests/test_my_bug.py
# commit work in progress as you go
git commit -am 'BF - added tests for Funny bug'
# hack hack, hack
git commit -am 'BF - added fix for Funny bug'
# make the patch files
git format-patch -M -C main
Luego, envíe los archivos de parche generados a la lista de correo de Matplotlib , donde se lo agradeceremos calurosamente.
En detalle #
Dile a git quién eres para que pueda etiquetar las confirmaciones que has hecho:
git config --global user.email [email protected] git config --global user.name "Your Name Comes Here"
Si aún no tiene uno, clone una copia del repositorio de Matplotlib :
git clone https://github.com/matplotlib/matplotlib.git cd matplotlib
Haz una 'rama característica'. Aquí será donde trabajará en la corrección de errores. Es agradable y seguro y te deja con acceso a una copia del código sin modificar en la rama principal:
git branch the-fix-im-thinking-of git checkout the-fix-im-thinking-of
Realice algunas ediciones y confírmelas a medida que avanza:
# hack, hack, hack # Tell git about any new files you've made git add somewhere/tests/test_my_bug.py # commit work in progress as you go git commit -am 'BF - added tests for Funny bug' # hack hack, hack git commit -am 'BF - added fix for Funny bug'
Tenga en cuenta las
-am
opciones paracommit
. Lam
bandera solo indica que va a escribir un mensaje en la línea de comando. Laa
bandera, puedes confiar en ella, o ¿ves por qué la bandera -a? .Cuando haya terminado, verifique que haya confirmado todos sus cambios:
git status
Finalmente, convierte tus confirmaciones en parches. Desea todas las confirmaciones desde que se bifurcó desde la
main
rama:git format-patch -M -C main
Ahora tendrá varios archivos nombrados para las confirmaciones:
0001-BF-added-tests-for-Funny-bug.patch 0002-BF-added-fix-for-Funny-bug.patch
Envíe estos archivos a la lista de correo de Matplotlib .
Cuando haya terminado, para volver a la copia principal del código, simplemente regrese a la main
rama:
git checkout main
Pasar de la aplicación de parches al desarrollo #
Si descubre que ha realizado algunos parches y tiene una o más ramas de características, probablemente querrá cambiar al modo de desarrollo. Puedes hacer esto con el repositorio que tienes.
Bifurque el repositorio de Matplotlib en github: haga su propia copia (bifurcación) de Matplotlib . Después:
# checkout and refresh main branch from main repo
git checkout main
git pull origin main
# rename pointer to main repository to 'upstream'
git remote rename origin upstream
# point your repo to default read / write to your fork on github
git remote add origin [email protected]:your-user-name/matplotlib.git
# push up any branches you've made and want to keep
git push origin the-fix-im-thinking-of
Luego puede, si lo desea, seguir el flujo de trabajo de Desarrollo .