python - node_modules - Ignorar el archivo.pyc en el repositorio git
git ignore untracked files (4)
Debes añadir una línea con:
*.pyc
al archivo .gitignore
en la carpeta raíz de su árbol de repositorio git justo después de la inicialización del repositorio.
Como dijo ralphtheninja , si olvidó hacerlo de antemano, si simplemente agrega la línea al archivo .gitignore
, todos los archivos .gitignore
previamente confirmados se seguirán, así que deberá eliminarlos del repositorio.
Si está en un sistema Linux (o "padres e hijos" como un MacOSX), puede hacerlo rápidamente con solo este comando de una línea que necesita ejecutar desde la raíz del repositorio:
find . -name "*.pyc" -exec git rm -f "{}" /;
Esto solo significa:
comenzando desde el directorio en el que estoy actualmente, busque todos los archivos cuyo nombre termine con la extensión
.pyc
y pase el nombre del archivo al comandogit rm -f
Después de la eliminación de los *.pyc
de git como archivos rastreados, confirme este cambio en el repositorio y finalmente puede agregar la línea *.pyc
.gitignore
archivo .gitignore
.
(Adaptado de http://yuji.wordpress.com/2010/10/29/git-remove-all-pyc/ )
¿Cómo puedo ignorar el archivo .pyc en git. Si pongo .gitignore no funciona: necesito que estén sin seguimiento y no verifiquen si están comprometidos
Gracias @Enrico por la respuesta.
Tenga en cuenta que si está usando virtualenv, tendrá varios archivos .pyc
más en el directorio en el que se encuentra actualmente, que serán capturados por su comando find.
Por ejemplo:
./app.pyc
./lib/python2.7/_weakrefset.pyc
./lib/python2.7/abc.pyc
./lib/python2.7/codecs.pyc
./lib/python2.7/copy_reg.pyc
./lib/python2.7/site-packages/alembic/__init__.pyc
./lib/python2.7/site-packages/alembic/autogenerate/__init__.pyc
./lib/python2.7/site-packages/alembic/autogenerate/api.pyc
Supongo que es inofensivo eliminar todos los archivos, pero si solo desea eliminar los archivos .pyc
en su directorio principal, simplemente haga lo siguiente:
find "*.pyc" -exec git rm -f "{}" /;
Esto eliminará solo el archivo app.pyc
del repositorio git.
Probablemente los haya agregado al repositorio antes de poner *.pyc
.gitignore
en .gitignore
.
Primero elimínelos del repositorio.
Ponlo en .gitignore
. Pero desde la gitignore(5)
del gitignore(5)
:
· If the pattern does not contain a slash /, git treats it as a shell glob pattern and checks for a match against the pathname relative to the location of the .gitignore file (relative to the toplevel of the work tree if not from a .gitignore file). · Otherwise, git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag: wildcards in the pattern will not match a / in the pathname. For example, "Documentation/*.html" matches "Documentation/git.html" but not "Documentation/ppc/ppc.html" or "tools/perf/Documentation/perf.html".
Por lo tanto, especifique la ruta completa a la entrada *.pyc
apropiada o .gitignore
en un archivo .gitignore
en cualquiera de los directorios que provienen de la raíz del repositorio (inclusive).