Y luego agregue la ruta a .gitignore para que git no intente hacerlo agregar más tarde.
grossvogel
3
¿Esto resultará en (archivos en) el directorio que se eliminará cuando extraiga del control remoto?
bstpierre
No cuando él tira; los archivos permanecerán eliminados localmente durante el proceso de fusión automática de extracción. Después de eso, una inserción hará que los archivos se eliminen del lado del servidor.
Walter Mundt
77
¿Qué sucede si tengo un tercer control remoto? ¿Se eliminarán los archivos correspondientes en un tirón futuro? Pregunto porque siento que este es un caso de uso bastante común, es decir, verifica algunos archivos en el repositorio, me doy cuenta en una fecha posterior que divergen entre controles remotos, por una buena razón, y nunca debería haber estado en el repositorio en primer lugar, quiero para resolver eso manteniendo todos los pagos locales exactamente como son, pero eliminando los archivos del repositorio.
Bobby Jack
66
Para archivos individuales, puede hacerlogit rm --cached path/to/file
Travis Reeder
3
Yo solo:
Mueva la carpeta fuera de su árbol de trabajo
git rm la carpeta, confirma el cambio
Agregar a .gitignore(o .git/info/excludes), confirmar el cambio
esta no es una buena solución, ¿qué pasa si tiene un directorio muy grande?
ioleo
probablemente necesite usargit rm -r
theUtherSide
1
@loostro simplemente no lo mueva a otro dispositivo de bloque. La mayoría de los sistemas de archivos simplemente actualizarán el inodo del archivo, y no moverán literalmente todo el directorio
Respuestas:
Organizará la eliminación del directorio, pero no toca nada en el disco. Esto también funciona para un archivo, como:
Después, es posible que desee agregar
somedir/
osomefile.ext
a su.gitignore
archivo para que git no intente agregarlo nuevamente.fuente
git rm --cached path/to/file
Yo solo:
git rm
la carpeta, confirma el cambio.gitignore
(o.git/info/excludes
), confirmar el cambiofuente
git rm -r