Domanda

Sto cercando di aggiungere un post-commit hook a un repository nudo, in modo tale che ogni volta che un commit è fatto i file modificati vengono installati automaticamente in una directory (hardcoded).

C'è un modo per recuperare un singolo file dal repository?

git-clone non sembra consentire per specificare un percorso, e tutti gli altri comandi che ho trovato (git-fetch, git-pull) sembrano richiedere un repository git locale esistente a lavorare.

C'è un modo per fare questo?

È stato utile?

Soluzione

Si possono trovare le risposte a: Come fare un "esportazione git"

In particolare, git checkout-index probabilmente farà il lavoro per voi:

git checkout-index -a -f --prefix=/destination/path/

Non dimenticare la barra finale o questo comando non farà esattamente quello che vuoi.

Altri suggerimenti

È possibile estrarre un singolo file da qualsiasi revisione in un repository nudo con git show, utilizzando la sintassi di git show <rev>:<filename>, per esempio:.

 $ ls
 branches  config  description  HEAD  hooks  info  objects  packed-refs  refs
 $ git show master:COPYING > /tmp/COPYING
 $ head -5 /tmp/COPYING
                     GNU GENERAL PUBLIC LICENSE
                        Version 3, 29 June 2007

  Copyright (C) 2007 Free Software Foundation, Inc. 
  Everyone is permitted to copy and distribute verbatim copies

Ci sono un paio di esempi in il git-spettacolo (1) pagina man . Spero che sia di qualche utilità.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top