¿Qué significa "en" @ signo / símbolo / carácter en Git?

El at-sign@ se usa a menudo en git paraespecificar revisiones En maneras diferentes. Por ejemplo,

<ref>@{<date>} Especifica la referencia en su estado en<date>.

Ejemplo:git diff master@{yesterday} master.

<ref>@{<n>} especifica la referencia en su nth Estado previo.

Ejemplo:git diff master@{1} master.

@{-<n>} especifica la nth rama previamente retirada antes de la actual.

Ejemplo:git checkout @{-5}.

<ref>@{upstream} Especifica la rama ascendente para la referencia.

Ejemplo:git diff master@{upstream} master.

sin embargo, la@ también se usa de otras maneras en los comandos git, como

git rebase -i @~4
git log @^^..@

¿Qué hace el signo?@ significa en esos ejemplos?

Respuestas a la pregunta(1)

Su respuesta a la pregunta