Versión en vivo desarrollador local Git cómo hacerlo?

Para ser específico con la pregunta, voy a enumerar mi escenario a continuación,

  1. Tengo la versión local de git instalada en mi máquina de Windows, aquí es donde hago el desarrollo (en la twig de desarrollador).

  2. Luego lo cargo en el server de subdominios del desarrollador para probarlo, una vez que finalice la testing, confirmo el repository remoto basado en bitit de git local (twig de desarrollador allí).

  3. En mi local y bitbucket ambos tienen master que fusiono cuando llego a un punto específico.

todo esto se ve bien y funciona bien para mí, pero mi problema surge cuando quería mover los files modificados al server en vivo (website real), ¿cuál es la mejor manera de hacerlo? que cargando uno por uno revisando los files cambiados …

También tengo instalado Git en mi server en vivo, pero necesito saber,

  1. ¿Cómo puedo hacer un tirón a mi git en vivo desde el bitbucket?
  2. Si hago una extracción, sobrescribirá los files / carpetas del usuario, como las imágenes subidas por el usuario (que no se registran en git).
  3. Si desea destrabar files, ex usuario cargar files / yo uso rm -rf {nombre de file} pero en este caso eliminó los files del sistema operativo, ¿hay alguna manera de deshacer sin eliminar?
  4. ¿o es una buena idea hacer un seguimiento de todo, incluidos los files de usuario en el git?

Soy muy nuevo en git, así que dame algunos consejos sobre cómo hacer un desarrollo adecuado, versiones locales y en vivo en git.

Gracias

  1. Configura un repository desnudo al que puede acceder. Un gancho posterior a la recepción puede volver a su repository en vivo no desnudo, y git pull de su repository desnudo.
    Todos los detalles en " Submodule de Git en remoto descubierto " (puede ignorar la parte de "submodule")
  2. No, no sobrescribirá files no rastreados
  3. Si esos files no se han rastreado en primer lugar, no es necesario que haga nada.
    Si su repository contiene algún file que desea ignorar temporalmente, puede git update-index --assume-unchanged them.
    Ver " git commit config en la confirmación inicial pero nunca más? "
  4. No, si los files son puramente locales para un entorno, no debería ser necesario includelos en un git repo (que se clona en un lote)