Need help with goop?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

deletescape
252 Stars 16 Forks MIT License 29 Commits 3 Opened issues

Description

Yet another tool to dump a git repository from a website.

Services available

!
?

Need anything else?

Contributors list

# 64,626
Kotlin
ktor
whatsap...
HTML
29 commits

goop

Yet another tool to dump a git repository from a website. Code structure and console outputs heavily inspired by arthaud/git-dumper.

Usage

usage: goop [flags] url [dir]

Flags: -f, --force overrides DIR if it already exists -h, --help help for goop

Example

$ goop example.com

Installation

GO111MODULE=on go get -u github.com/deletescape/goop

How does it work?

The tool will first check if directory listing is available. If it is, then it will just recursively download the .git directory (what you would do with

wget
).

If directory listing is not available, it will use several methods to find as many files as possible. Step by step, git-dumper will: * Fetch all common files (

.gitignore
,
.git/HEAD
,
.git/index
, etc.); * Find as many refs as possible (such as
refs/heads/master
,
refs/remotes/origin/HEAD
, etc.) by analyzing
.git/HEAD
,
.git/logs/HEAD
,
.git/config
,
.git/packed-refs
and so on; * Find as many objects (sha1) as possible by analyzing
.git/packed-refs
,
.git/index
,
.git/refs/*
and
.git/logs/*
; * Fetch all objects recursively, analyzing each commits to find their parents; * Run
git checkout .
to recover the current working tree

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.