Cómo convertir un directory existente no vacío en un directory de trabajo de Git y enviar files a un repository remoto

  1. Tengo un directory no vacío (por ejemplo, / etc / something) con files que no pueden renombrarse, moverse ni eliminarse.

  2. Quiero comprobar este directory en git en su lugar.

  3. Quiero poder enviar el estado de este repository a un repository remoto (en otra máquina) usando "git push" o algo similar.

Esto es trivial usando Subversion (actualmente lo hacemos usando Subversion) usando:

svn mkdir <url> -m <msg> cd <localdir> svn co <url> . svn add <files etc> svn commit -m <msg> 

¿Cuál es el equivalente de git?

¿Puedo "clonar git" en un directory vacío y simplemente mover el directory .git y hacer que todo funcione?

Dado que has configurado un daemon git en <url> y un repository vacío:

 cd <localdir> git init git add . git commit -m 'message' git remote add origin <url> git push -u origin master 

Aquí está mi solución:

 git init git remote add origin PATH/TO/REPO git fetch git checkout -t origin/master 

En caso de que el repository remoto no esté vacío (este es el caso si está utilizando IBM DevOps en hub.jazz.net), entonces necesita usar la siguiente secuencia:

 cd <localDir> git init git add -A . git pull <url> master git commit -m "message" git remote add origin <url> git push 

EDITAR 30 de enero 17: ¡Por favor, vea los comentarios a continuación, asegúrese de estar en el repository correcto!

Así es como lo hago. He agregado una explicación para entender qué diablos está pasando.

Inicializar el repository local

  • primero inicializar Git con

    git init

  • Agregue todos los files para el control de la versión con

    git add.

  • Crea una confirmación con el post de tu elección

    git commit -m 'AddingBaseCode'

    Inicializar repository remoto

  • Crea un proyecto en Github y copy la URL de tu proyecto y copy la URL del proyecto.

    enter image description here

    Enlace Repo remoto con repository local

  • Ahora use la URL copyda para vincular su repository local con el repository remoto de GitHub. Cuando clonas un repository con git clone, automáticamente crea una connection remota llamada origen apuntando al repository clonado. El command remote se usa para administrar el set de repositorys rastreados.

    git remote add origen https://github.com/hiteshsahu/Hassium-Word.git

    Sincronizar

  • Ahora necesitamos fusionar el código local con el código remoto. Este paso es crítico, de lo contrario no podremos presionar Código en Github. Debes llamar a 'git pull' antes de presionar tu código.

    git pull master de origen –allow-unrelated-histories

    Confirma tu código

  • Finalmente presione todos los cambios en Github

    git push -u origin master