Cómo extraer el código (después de ejecutar erróneamente los commands de inserción y eliminación)

Soy nuevo en Git. Cargué incorrectamente mi código en el repository de GitHub con el command de inserción usando el control de fuente de Xcode. Luego, hice una pregunta sobre cómo puedo eliminar el contenido del máster, porque pensé que eliminar los files era suficiente para comenzar de nuevo. (NB: No puedo eliminar el repository y crear uno nuevo) así que eliminé cada file en el repository con el command de inserción y el repository está vacío ahora. Cuando trato de sacar mi copy de trabajo local esta vez, mi copy local de trabajo fue eliminada.

¿Alguien sabe cómo puedo sacar mi código?

Hay dos maneras de solucionar este problema.

  1. Reescribe tu historial e impulsa la reescritura a maestro (no recomendado, porque también arruinará la historia de todos los demás, pero tiene el beneficio de hacer que parezca que nunca cometiste un error)
  2. Realiza una nueva confirmación revertir los cambios y enviar esta nueva confirmación. Esto mantiene su código anterior en el repository pero lo elimina de versiones posteriores. También tiene el beneficio adicional de no arruinar la historia de todos los demás.

Para lograr el # 1, simplemente ejecute git log y encuentre el número de ID de confirmación, luego ejecute git reset NUMBER para revertir su tree al estado de trabajo. Luego presione sus cambios con git push RemoteName BranchName --force

Como mencioné, recomiendo encarecidamente que no lo haga a less que tenga algunas preocupaciones importantes sobre la privacidad de su error. Una forma mucho mejor de manejar el problema es ejecutar git revert CommitID para crear una nueva confirmación que "deshaga" su error anterior. Echa un vistazo a este anuncio de Atlassian para saber cómo hacer eso.