Capistrano carga el directory .git

Estoy usando git con capistrano.

Inicialicé mi proyecto dentro de mi carpeta en mi máquina local como tal:

git init 

Luego empujé el proyecto al directory del server al que llamé cap deploy El deployment funciona, excepto que carga la estructura de la carpeta .git local, así como mi .gitignore y Capfile a una carpeta de acceso público.

Aquí está mi file de gitignore:

 .DS_Store uploads/**/* Capfile .gitignore .git/**/* 

Esto no parece hacer el truco. ¿Alguna ayuda?

¡Gracias!


Editar: file .gitignore actualizado:

Cambió la estrategia de implementación para exportar:

 set :deploy_via, :export 

Esto funciona para ignorar la carpeta .git, pero el contenido de mi file .gitignore que se muestra a continuación aún no se toma en count

 .DS_Store includes/php/config.php /uploads Capfile .git 





EDIT 2 (Solución): Editar 1 en combinación con lo siguiente hizo el truco. Los files que ya se agregaron antes de aparecer en el file .gitignore se cargarán constantemente. Digamos que tenía el siguiente file .gitignore.

 .DS_Store includes/php/config.php 

Luego ejecuté los siguientes commands:

 git add . git commit -a -m 'some commit' 

Luego decidí agregar a mi file .gitignore para que ahora se vea así:

 .DS_Store includes/php/config.php Capfile 

Por otra parte, corrí:

 git add . git commit -a -m 'another commit' 

Ahora vería que .DS_Store e includes/php/config.php no se han subido, pero que el Capfile tiene … Esto es lo que me sucedió en mi pregunta original. La razón: creo que el file .gitignore se tiene en count solo cuando se agrega (es decir, git add . ). Si ya agregué files y los puse en el file .gitignore, ya se habrían agregado al proyecto. Tendría que usar el command git rm para eliminarlos. Empecé de nuevo con un nuevo .git repo y eso resolvió el problema, pero no es necesario; solo puede eliminar los files que ya agregó pero que ahora quiere ignorar con el command git rm .

Seleccioné la respuesta que me ayudó a llegar a esta conclusión como la correcta, aunque la solución completa se acaba de detallar más arriba.

¿Cuál es su estrategia de implementación?

¿Tiene la configuration de Capistrano para excluir el file .git? si está utilizando set :deploy_via, :copy , asegúrese de agregar lo siguiente:

set :copy_exclude, [".git/*", ".svn/*", ".DS_Store"]

De lo contrario, use set :deploy_via, :export que debe ignorar las carpetas de control de origen.

http://www.capify.org/index.php/Understanding_Deployment_Strategies

Al mirar una pregunta similar , parece que no necesita los selectores de comodín y puede tener:

 uploads/ 

Debe implementar a través de :git en Capistrano y hacer una export. Es esencialmente un git clone y luego simplemente elimina el directory .git después.

Tu problema no tiene mucho que ver con Cap realmente. Asegúrese de que su file .gitignore esté funcionando correctamente.