Git: get una revisión particular de un repository git con profundidad 1

¿Cómo obtengo una revisión única de un repository de git sin clonar todo el repository ?

Nota : esta pregunta se ha formulado cientos de veces, pero aún no he visto una respuesta que la resuelva ya que todas comienzan con "clonar todo el repository de git". Esto no se puede hacer en mi caso de uso.

Lo mejor que puedo hacer es:

  1. Encuentra la depth de la confirmación.
  2. Clona hasta esa profundidad: git clone --depth $depth $git_repo_url .
  3. git checkout $commit_hash; git reset --hard y reinicio: git checkout $commit_hash; git reset --hard git checkout $commit_hash; git reset --hard .

Pero esto todavía requiere la clonación hasta la profundidad de los compromisos.

¿Hay alguna manera de evitar eso y clonar solo un compromiso particular con profundidad 1?

No con clone pero con pull / fetch . Ver esta publicación:

  1. ¿Cómo clonar el repository de git con revisión / set de cambios específico?

  2. Recuperar compromiso específico de un repository remoto de Git

     git init git fetch --depth 1 url://to/source/repository <sha1-of-commit> 

Y establezca uploadpack.allowReachableSHA1InWant en el lado del server.

¿Qué tal si haces un reflog y git cherry-pick