https://github.com/matryer/drop
Dependency-less dependencies for Go.
https://github.com/matryer/drop
Last synced: 19 days ago
JSON representation
Dependency-less dependencies for Go.
- Host: GitHub
- URL: https://github.com/matryer/drop
- Owner: matryer
- License: gpl-3.0
- Created: 2016-05-28T07:53:27.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-11-26T19:50:08.000Z (over 8 years ago)
- Last Synced: 2025-03-24T15:11:15.278Z (about 1 month ago)
- Language: Go
- Size: 26.4 KB
- Stars: 122
- Watchers: 3
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Drop
Dependency-less dependencies for Go.Features:
* Drop copies dependency source files into your project
* Rewrites `package` declaration to match your code
* Familiar [usage](#usage) - uses `go get` under the hood
* Configurable by [package authors](#package-authors)Get started:
* [How it works](#how-it-works)
* [Install](#install)
* [Usage](#usage)
* [Package authors](#package-authors)## How it works
From inside your project (where files will be copied):
```
drop {import-path}
```For example, to add the retry functionality from [github.com/matryer/try](https://github.com/matryer/try):
```
drop github.com/matryer/try
```The `*.go` files from the package will be copied into your project.
## Install
Install with:
```
go get github.com/matryer/drop
```## Usage
```
drop [flags] import [path]flags - see below
import - import path to go get
path - directory within repo to copy fromflags:
-f overwrite files
-help
show help
-outformat string
filename format (default "%s")
-package string
package name (default auto discover)
-v verbose logging
-version
print version
```## Package authors
By default, all `*.go` files are copied (including test files). To explicitly
specify what is copied, you can add a `.drop` file to the directory, where
each line is a file, or [filepath.Match pattern](https://golang.org/pkg/path/filepath/#Match):### Example `.drop` file
```
# .drop file for this projectsomething.go
something_test.go
something_tips.md
*.sh
```* Comments (lines beginning with `#`) and empty lines are ignored