Pregunta

Estoy haciendo cambios en algún archivo en mi repositorio git local y luego quiero enviar los cambios al repositorio Git remoto desde el que los locales se clonó a través de SSH.

Después de ejecutar "git commit -a" en mi lado local, para enviar los cambios a la distancia, corro

$ git push
Everything up-to-date

Sin embargo he comprobado los archivos remotos y no se cambian! Alguna idea?

Gracias y saludos!

¿Fue útil?

Solución

Probablemente empujados a un repositorio no desnuda, es decir, un repositorio que tiene una copia de trabajo que se le atribuye. No deberías haber ignorado el git push advertencia le dará si se da cuenta de que este es el caso.

En cualquier caso, inicie sesión en la máquina remota, el cambio al repositorio y hacer

git checkout <whatever branch you’re on>

Hay que ir. La próxima vez sólo se empuje a repositorios desnudas. :)

Otros consejos

has lo siguiente?

 $ git push origin master:master

He descubierto que el problema era que no había añadido a los archivos de la actualización, así como un mensaje. He arreglado esto usando los siguientes comandos:

git add .

y

git commit -m "updates done by..."

y

git push origin <repo_name>

Espero que esto ayude a alguien;)

Yo tenía el mismo problema y que era debido a Me había registrado a un punto en la historia (en este caso una etiqueta), en lugar de al final (cabeza) de cualquier sucursal o maestro. Me gustaría hacer el cambio y comprometerse que tener éxito y me gustaría ver los cambios en mi historia local. Cuando me encontré con git push, git declarado que todo estaba bien, pero el cambio en realidad no había sido presentado al servidor (que se puede ver mediante la comprobación de los registros, o volviendo a clonar el repositorio y la comprobación de que es logs). El mejor síntoma de este error es ver el mensaje "detatched Cabeza de ____"

La Solución

Lo que se necesita realmente que hacer (si usted ha hecho lo que he hecho) es crear una nueva línea de desarrollo por crear una rama y el cambio a esa rama antes hacer los cambios.

git branch [a new branch name]
git checkout [a new branch name]  

A continuación, después de confirmar los cambios, si desea que los cambios sean empujados al servidor que necesita para empujar la rama ante el servidor.

git push -u origin [local branch name]

Ahora bien, si se clona el repositorio, debería ver los cambios en los registros. Sin embargo, la próxima vez se clona el repositorio, para poder ir a ese punto que acaba de cambiar, tendrá a la caja de esa rama, ya que tendrá por defecto a estar en la línea principal que es "más" abajo de la línea de desarrollo desde donde se bifurcó.

git checkout [branch name]  
git commit --amend

cambiará el commit ID y hacer que el repositorio remoto "pensar" se han realizado nuevos cambios.

Le sugiero que busque en el uso de gitosis para alojamiento de los repositorios Git desnudos . Es muy fácil de usar después de la configuración inicial.

escribir "git log" en su repositorio remoto para ver si contiene la más reciente confirmación. Si no es así, usted debe comprobar la configuración de ustedes repositorio local para ver los ajustes remotos.

Para ver los cambios en los diferentes tipos de su repositorio remoto:

A. Si su repositorio remoto está desnudo, se pueden encontrar los archivos en el repositorio remoto ramas / config descripción CABEZA manos/ info / objetos/ refs /

después de nuevo commit es empujado, archivos de objetos / directorio habría cambiado.

B. Si su repositorio remoto no es descubierto, tipo "master git checkout" Y "git status" en su repositorio remoto para ver el estado del archivo. A ver si algún archivo ha sido modificado o eliminado.

Ninguna de estas soluciones trabajó para mí, y las confirmaciones aparecería en mi sitio web en vivo sólo después de correr GIT_WORK_TREE=/path/to/website git checkout -f. Si este es tu caso hay que añadir un "gancho" para la configuración de Git.

  1. Ir a los ganchos de las carpeta dentro de la carpeta git:

    cd ~/path/.git

    cd hooks

    nano post-receive

  2. Escribir esta línea en el archivo de post-recepción:

    GIT_WORK_TREE=/path/to/your/website/or/project/ git checkout -f

  3. Por último, hay que modificar los permisos del archivo de post-recepción:

    chmod a+x post-receive

Esto ejecutará ese comando cada vez que se pulsa, la actualización de los compromete en su proyecto a distancia.

Me acaba de experimentar una ocurrencia similarmente frustrante de no ver mi cambio replicado en github. Como nuevo usuario git, simplemente acostumbrarse al uso del sistema, he creado una carpeta de mi equipo, añadió que, cometido, empujé - ningún cambio. Consideré la posibilidad de que no puedo empujar un directorio vacío, así que creé un archivo vacío en el directorio y luego se repite los pasos anteriores. Todo lo mejor, el cambio se refleja inmediatamente en mi repo github.

Bueno, esto es lo que funcionó para mí

git stash

git pull

git add .

git commit -m "commit message"

git push

Otro problema podría ser que, si bien es posible que haya utilizado

  

git add sus-dirs

Hay que recordar a cometer los archivos dentro de los directorios

  

git commit -m'Add su mensaje' tu-dir / *

A continuación, añadir un git push con el fin de empujar a su control remoto

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top