¿Por qué hay una input `remotes / origin / HEAD -> origin / master` en mi salida` git branch -l -a`?

No entiendo la segunda línea en la salida de la git branch -l -a : remotes/origin/HEAD -> origin/master .

 git branch -l -a * master remotes/origin/HEAD -> origin/master remotes/origin/master 

¿Es eso un rest de otra operación? ¿Debería limpiarlo? ¿Y cómo haría eso?

Usualmente trabajo con git en el cli, pero en este repository local experimenté con TortoiseGit para encontrar un flujo de trabajo de git fácil para un amigo.

No, no hay necesidad de limpiar: es la twig simbólica a la que hace reference su repository remoto.
Cuando clones tu repository, estarás por defecto en la twig a la que hacen reference los remotes/origin/HEAD .

Ver también:

  • " Git: ¿La forma correcta de cambiar la Rama activa en un repository simple? "
  • " ¿Cómo cambio un control remoto GIT para señalar algo además de" maestro " "
  • " ¿Cómo se establece origin/HEAD ? "

Puede usar git remote set-head origin -d para eliminar el origin/HEAD reference simbólica origin/HEAD , o git remote set-head origin -a para consultar el control remoto y establecer automáticamente el puntero de origin/HEAD en la bifurcación actual del control remoto.

La reference de origin/HEAD es opcional. Solo actúa como un atajo sintáctico: si existe y apunta a origin/master , puedes usar el origin simple específico donde especificarías el origin/master .

La página man de git remote (1) describe esto:

set-head

Establece o borra la twig pnetworkingeterminada (es decir, el destino de las references simbólicas / remotos // HEAD) para el control remoto nombrado. No es necesario tener una bifurcación pnetworkingeterminada para un control remoto, pero permite especificar el nombre del control remoto en lugar de una bifurcación específica. Por ejemplo, si la twig pnetworkingeterminada para el origen está configurada como maestra, entonces el origen se puede especificar donde sea que normalmente se especifique origen / maestro.