tag staged example changes all git repository

staged - git tag



Mover un repositorio git (5)

He encontrado que los submódulos no son relativos en git.

Por lo tanto, si desea mover un proyecto que contiene submódulos, debe editar el archivo .git en el submódulo, así como el atributo "worktree" en el archivo de configuración del submódulo, que se almacena en el .git/modules/MODULENAME/config archivo de .git/modules/MODULENAME/config .

Esta pregunta puede ser tonta, pero me lo he estado preguntando por un tiempo. Se trata de repositorios git, pero supongo que es lo mismo para repositorios locales para otros DVCS ''.

Digamos que mi proyecto es así cuando comienza:

  • Proyecto
    • .git
    • todas las otras carpetas en el proyecto

¿Así es como funcionaría cuando lo configuras bien?

Digamos que muevo la carpeta Proyecto a otro lugar, ¿tendría que cambiar algo? O es que todas las cosas del repositorio en la carpeta .git son relativas solo a la carpeta del Proyecto, ignorando todo el árbol de archivos sobre el Proyecto.

Estoy bastante seguro de que mover Proyecto no importaría, pero solo quería asegurarme.


Mostrar control remoto actual (este es un paso opcional del curso):

$ git remote show origin * remote origin URL: git@oldserver:project.git Remote branch(es) merged with ''git pull'' while on branch master master Tracked remote branches master

Lo que debemos hacer es eliminar el origen actual y agregar el nuevo:

$ git remote rm origin $ git remote add origin git@newserver:project.git $ git remote show origin * remote origin URL: git@newserver:project.git Remote branch(es) merged with ''git pull'' while on branch master master error: refs/remotes/origin/HEAD points nowhere! New remote branches (next fetch will store in remotes/origin) master

No te preocupes por el error mostrado por el último comando. El primer tirón desde el origen lo arreglará:

$ git pull From git@newserver:project.git * [new branch] master -> origin/master Already up-to-date. $ git remote show origin * remote origin URL: git@newserver:project.git Remote branch(es) merged with ''git pull'' while on branch master master Tracked remote branches master

Todavía estoy fresco con Git, así que quizás haya una mejor manera de hacerlo, pero esto me funcionó.


No, no tendrías que cambiar nada más. Es decir

  • asumiendo que no hay scripts configurados GIT_DIR, GIT_WORKTREE o GIT_INDEX directamente (improbable)
  • No tienes repositorios externos apuntando a esta copia.

    • Si lo hace, tendrá que volver a colocarlos utilizando

      git remote set-url [--push] origin user@yourhost:/home/user/newlocation/Project

(origen debe ser el nombre del remoto; origen es el nombre predeterminado al clonar desde un repositorio remoto)


Puede mover el directorio git de una máquina a otra o, si lo desea, migrar la carpeta de su proyecto.

Toda la información sobre el origen se almacena en la carpeta ''.git'', que se crea cuando inicializa un repositorio git en un directorio de su sistema.

Procedimiento

  1. : Mueva la carpeta del proyecto a otra ubicación.
  2. : Si la carpeta del proyecto se está moviendo a una nueva máquina, cree el par de claves SSH correspondiente.
  3. : Dile a git quién estás utilizando: git config --global user.email "your_git_email_id @ youremail"

Sí, todo en .git es relativo. Sin embargo, si ha agregado el repositorio como un remoto nombrado a otro repositorio, tendría que cambiar la URL remota en ese otro repositorio.