Creé un nuevo repositorio en Github que ahora solo tiene el archivo Readme.md.
Tengo un proyecto RoR recién creado que quería enviar a este repositorio. Los siguientes son los comandos que di en mi Terminal para ejecutar esto junto con el error que recibo.
git remote add origin https://github.com/aniruddhabarapatre/learn-rails.git
Después de lo cual ingresé mi nombre de usuario y contraseña
git push -u origin master
Error ---
To https://github.com/aniruddhabarapatre/learn-rails.git
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'https://github.com/aniruddhabarapatre/learn-rails.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Esta es la primera vez que empujo mi código a un repositorio de Github y estoy perdido con los errores. Busqué algunas otras preguntas que se hacen aquí, pero ninguna de ellas tuvo problemas la primera vez.
Respuestas:
Cuando creó su repositorio en GitHub , creó un archivo README.md , que es una nueva confirmación .
Su repositorio local aún no conoce esta confirmación. Por lo tanto:
Es posible que desee encontrar para seguir este consejo:
Es decir:
fuente
fatal: refusing to merge unrelated histories
en tal caso, enviargit pull --allow-unrelated-histories origin master
y luego presionar según la respuesta anteriorSi este es tu primer empujón
solo cambia el
¡cámbialo así!
fuente
Y aquí hay un GIF.
⚠️ CUIDADO : El uso
force
puede cambiar el historial de otras personas en el mismo proyecto. Básicamente, si no le importa que un archivo se elimine para todos, simplemente continúe. Especialmente si eres el único desarrollador en el proyecto.fuente
git push -f origin master
No es un gran hábito formarse.-f
La etiqueta elimina archivos y debe usarse con cuidado.Emita un empuje forzado con el comando:
fuente
Suponiendo que agregó el archivo Readme.md a través de la interfaz proporcionada por github, el archivo readme aún no está en su carpeta local. Por lo tanto, cuando intenta pasar al repositorio remoto, obtiene un error, porque su repositorio local carece del archivo léame, por así decirlo, está "retrasado". Por lo tanto, como se sugiere en el mensaje de error, intente primero "git pull". Esto extraerá el archivo Léame del repositorio remoto y lo combinará con su directorio local. Después de eso, no debería tener problemas para pasar al repositorio remoto (los comandos que publicó me parecen válidos).
fuente
Esto sucede cuando intenta presionar inicialmente. Debido a que en su repositorio de GitHub tiene readMe.md o cualquier otra cosa nueva que no esté en su repositorio local. Primero debe fusionar el historial no relacionado de su repositorio de github.
entonces puede obtener los otros archivos del repositorio (readMe.md o cualquiera) usando esto
Después de esto
Ahora empujas con éxito todos tus cambios en el repositorio de Github. No soy experto en git, pero cada vez que estos pasos funcionan para mí.
fuente
Teniendo en cuenta que si no ha comprometido sus cambios en un tiempo, quizás hacer esto funcionará para usted.
Eso funcionó para mí, espero que también lo haga para usted.
fuente
si usa el git para mac en la GUI, puede elegir Respository-> Pull o "comm + shift + p" para "git pull" primero, luego publique la fuente.
fuente
Este error ocurre cuando empuja los datos desde su directorio local a su repositorio git remoto siguiendo el comando git:
git push -u origin master
Como directorio local y archivos de directorio remoto de git en conflicto.
Solución:
Después de comprometer todos los archivos a la preparación, siga los pasos a continuación.
Recupere los archivos del repositorio remoto ya que está en conflicto con el directorio de trabajo local.
git pull <remoter-url> <branch-name>
Cometer los cambios nuevamente.
git add -A
git commit -m ‘<comment>'
Después de confirmar la fusión de archivos con ambos directorios, puede usar
git push -u origin master
Esto solucionará el problema. Gracias.
fuente
Tuve un problema similar ... Lo resolví así (no soy un experto en git, así que no sé si es una solución correcta, pero funcionó para mí):
fuente
¡Luché con este error durante más de una hora! A continuación se muestra lo que me ayudó a resolverlo. Todo esto mientras mi directorio de trabajo era el repositorio que había clonado en mi sistema.
Si está agregando archivos a su repositorio existente ** 1. Extraje todo lo que había agregado a mi repositorio a mi carpeta GitHub:
git pull
La salida era algún archivo léame archivo1 archivo2
p.ej. algunos archivos léame archivo1 archivo2 archivo nuevo1 archivo nuevo2
git agregar "archivo nuevo1" "archivo nuevo2"
estado de git [opcional] esto le asegurará si los archivos que desea agregar están organizados correctamente o no se emitieron
En la sucursal maestra Su sucursal está actualizada con 'origin / master'. Cambios a realizar: (use "git reset HEAD ..." para quitar el escenario)
5.git commit -m "cualquier descripción que quieras dar" 6.git push
Y todos mis archivos nuevos junto con los anteriores se vieron en mi repositorio.
fuente
Una respuesta más simple es cargar manualmente el archivo README.MD desde su computadora a GitHub. Me funcionó muy bien.
fuente
Uso las opciones de Ramas, y luego hago clic derecho en la carpeta "remoto / origen" y luego hago clic en "eliminar ramas del control remoto", mira la imagen a continuación:
fuente
Recibí este error en Azure Git, y esto resuelve el problema:
fuente