Articles of git filter branch

Cómo eliminar retroactivamente ciertos types de files de varios commits de git

Tengo un pequeño proyecto personal que es un repository de git con solo una twig principal y varias confirmaciones en él. (19, en realidad). Descubrí que accidentalmente incluí varios files .psd en el repository. Eso sucedió en el 7 ° compromiso. Me di count de mi error en la comisión 17 y agregué .psd a […]

Reformatear toda la base de código con git rewrite

Tenemos una base de código bastante grande que comprende aproximadamente 60000 commits. Queremos reformatear todos nuestros files .java mientras conservamos el historial de git. Entonces, el enfoque que tomamos es usar git filter-branch –tree-filter para reformatear toda la base del código mientras se mantiene el historial intacto. Pero, hay algunas preguntas que no puedo encontrar […]

¿Cómo puedo eliminar un file de git usando filter-branch, de modo que todavía no puedo convertir los contenidos?

He estado tratando muy duro de eliminar un file con datos confidenciales de mi repository de git usando esta excelente página (entre otras): http://help.github.com/removing-sensitive-data/ la línea principal es: git filter-branch –index-filter 'git rm –cached \ –ignore-unmatch FileWithSecrets.java' HEAD Sin embargo, incluso cuando sigo las instrucciones, incluida la poda y la recolección de basura de objects, […]

limpiar el historial de files eliminados, manteniendo el historial de files renombrados

Me gustaría extraer algunos files en un nuevo repository, manteniendo su historial, incluido el cambio de nombre de los files . La respuesta mejor y más cercana que pude encontrar fue new-repo-with-copy-history-of-only-currently-tracked-files , usando git filter-branch –index-filter . Mantiene con éxito el historial de files existentes, pero no conserva el historial de files renombrados. (Otra […]

Importación de un repository de Subversion con un layout no estándar en Git

Estoy intentando (permanentemente) migrar el repository de Subversion de mi grupo a Git, pero me estoy quedando sin problemas tratando de limpiar su estructura de directorys no estándar. Parte del contenido del proyecto está contenido en carpetas troncales y sucursales, pero no en todas. El proyecto sobre Subversion se presenta así: project/trunk/ project/branches/feature_1 project/branches/feature_2 project/libraries […]

Cómo aplastar confirmaciones en sucursales

Estoy importando un viejo svn repo en git. En un punto, se cambió el nombre de una carpeta en todas las twigs. Esto se hizo en svn creando un duplicado con historial, seguido de una eliminación del original en un segundo commit. Así que tengo un repository que se ve así: A -> B -> […]

¿Cómo eliminar los commits duplicates del command filter-branch en git?

Tengo un proyecto django que he mantenido en privado durante un largo período de time. A lo largo de la vida útil del proyecto, he tenido los files settings.py , base_settings.py y secret_settings.py con información confidencial. Ahora he decidido convertir el código en código abierto porque ya no estoy trabajando activamente en el proyecto. Ejecuté […]

¿Cómo puedo convertir un subdirectory en mi proyecto GitHub en un nuevo repository?

Recientemente, trasladé un par de subdirectorys en un proyecto mío en GitHub, y tenía curiosidad sobre la mejor manera de clonar un subdirectory en un nuevo proyecto. Específicamente, quiero que cualquier mención de problemas en los posts de compromiso para estos nuevos proyectos apunte al proyecto anterior.

'No se encontró nada para reescribir' git filter-branch no encontró nada para eliminar aunque el file esté presente

Así que he estado abordando cómo eliminar un determinado file de todo el historial de confirmaciones de repositorys, y he intentado varias cosas diferentes (como filter-tree y BFG . Intenté seguir este tutorial sobre cómo usar git filter-branch para eliminar todas las references de un historial. Me cambié a una twig temporal, y luego seguí […]

GIT_COMMIT no definido en index-filter

Parece que $ GIT_COMMIT no está definido en mi filter de índice. Yo esperaría que fuera así. ¿Me equivoco? $ git filter-branch –index-filter 'if [ $GIT_COMMIT == c69b26453cab89f9833b32a786f551ea18e5ff47 ]; then echo hello world; fi' c69b26453cab89f9833b32a786f551ea18e5ff47^..HEAD Rewrite 3de628334c72b7b573a9cb2836110a5a8a8b2d70 (1/1) (0 seconds passed, remaining 0 pnetworkingicted) /usr/lib/git-core/git-filter-branch: 1: [: 3de628334c72b7b573a9cb2836110a5a8a8b2d70: unexpected operator