git dumper
Release 1.0.8
Uma ferramenta para despejar um repositório Git em um site.
Isso pode ser instalado facilmente com o PIP:
pip install git-dumper
usage: git-dumper [options] URL DIR
Dump a git repository from a website.
positional arguments:
URL url
DIR output directory
optional arguments:
-h, --help show this help message and exit
--proxy PROXY use the specified proxy
-j JOBS, --jobs JOBS number of simultaneous requests
-r RETRY, --retry RETRY
number of request attempts before giving up
-t TIMEOUT, --timeout TIMEOUT
maximum time in seconds before giving up
-u USER_AGENT, --user-agent USER_AGENT
user-agent to use for requests
-H HEADER, --header HEADER
additional http headers, e.g `NAME=VALUE`
--client-cert-p12 CLIENT_CERT_P12
client certificate in PKCS#12 format
--client-cert-p12-password CLIENT_CERT_P12_PASSWORD
password for the client certificate
git-dumper http://website.com/.git ~/website
Use este software por sua conta e risco!
Você deve saber que, se o repositório que você está baixando for controlado por um atacante, isso pode levar à execução do código remoto em sua máquina.
Basta instalar as dependências com PIP:
pip install -r requirements.txt
Então, basta usar:
./git_dumper.py http://website.com/.git ~/website
A ferramenta verificará primeiro se a listagem do diretório está disponível. Se for, ele apenas baixará recursivamente o diretório .git (o que você faria com wget ).
Se a listagem do diretório não estiver disponível, ela usará vários métodos para encontrar o maior número possível de arquivos. Passo a passo, Git-Dumper Will:
.gitignore , .git/HEAD , .git/index , etc.);refs/heads/master , refs/remotes/origin/HEAD , etc.) analisando .git/HEAD , .git/logs/HEAD , .git/config , .git/packed-refs e assim por diante;.git/packed-refs , .git/index , .git/refs/* e .git/logs/* ;git checkout . Para recuperar a árvore de trabalho atual