Tengo 2 sucursales, que aún no están lists para fusionarse, pero tienen una lógica complementaria, que me gustaría revisar (antes de fusionar)
¿Puedo verificar múltiples twigs de git del mismo proyecto? ¿Es posible?
Simplemente puede copyr el repository en una nueva location (ya sea copyndo literalmente el directory, o usando git clone --shanetworking
) y git clone --shanetworking
una twig por location.
También puede usar git-worktree
para crear múltiples directorys de trabajo desde una única instancia de un repository.
De lo contrario, el medio principal para comparar files entre twigs antes de fusionarlos es git diff
.
Con Git 2.5+ (Q2 2015), un repository de Git admitirá múltiples treees de trabajo con git worktree add <path>
(y eso replaceá a contrib/workdir/git-new-workdir
)
Esos treees de trabajo "vinculados" en realidad se registran en la carpeta principal del repository $GIT_DIR/worktrees
(para que funcionen en cualquier sistema operativo, incluido Windows).
Ver más en "¿ Múltiples directorys de trabajo con Git? "
Lo primero que me viene a la mente es verificar cada twig en un proyecto separado. Entonces: 1. checkout branch A en el clon primario (1) 2. crea un nuevo clon (2) 3. checkout branch B en el clon 2
El segundo enfoque podría ser crear una nueva twig (también conocida como C) y fusionar ambas twigs A y B en ella. Si son complementarios, esto podría ayudar con su revisión.
Sí, es posible con el cuidado apropiado. Sin embargo, está sacando una de las copys del directory git normal utilizando la --work-tree=<path>
, por lo que git no verá los cambios allí a less que usted lo indique especialmente. He dado un ejemplo aquí single-working-branch-with-git : mira el segmento ACTUALIZADO.
Tenga en count que git-new-workdir
no funciona en Windows XP ya que requiere enlaces de estilo Unix.
Como ya se mencionó, puedes diferenciar las twigs con git diff:
git diff [--options] <commit> [--] [<path>…] This form is to view the changes you have in your working tree relative to the named <commit>. You can use HEAD to compare it with the latest commit, or a branch name to compare with the tip of a different branch.
El extracto de arriba es de la documentation de Git.
Ahora git
incluye el command worktree
para hacer exactamente eso.