README.md 2.11 KB
Newer Older
Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
1 2 3 4 5 6 7 8 9
# ipfs implementation in go.

See: https://github.com/jbenet/ipfs

Please put all issues regarding IPFS _design_ in the
[ipfs repo issues](https://github.com/jbenet/ipfs/issues).

Please put all issues regarding go IPFS _implementation_ in [this repo](https://github.com/jbenet/go-ipfs/issues).

Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
10 11 12 13 14
## Install

[Install Go](http://golang.org/doc/install). Then:

```
15
go get github.com/jbenet/go-ipfs/cmd/ipfs
Chas's avatar
Chas committed
16 17
cd $GOPATH/src/github.com/jbenet/go-ipfs/cmd/ipfs
go install
Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
18 19
```

20 21
NOTE: `git` and mercurial (`hg`) are required in order for `go get` to fetch all dependencies.

Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
## Usage

```
ipfs - global versioned p2p merkledag file system

Basic commands:

    add <path>    Add an object to ipfs.
    cat <ref>     Show ipfs object data.
    ls <ref>      List links from an object.
    refs <ref>    List link hashes from an object.

Tool commands:

    config        Manage configuration.
    version       Show ipfs version information.
    commands      List all available commands.

Advanced Commands:

    mount         Mount an ipfs read-only mountpoint.

Use "ipfs help <command>" for more information about a command.
```
46 47 48 49 50 51 52

## Contributing

go-ipfs is MIT licensed open source software. We welcome contributions big and small! Please make sure to check the [issues](https://github.com/jbenet/go-ipfs/issues). Search the closed ones before reporting things, and help us with the open ones.

Guidelines:

Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
53
- see the [dev pseudo-roadmap](dev.md)
54 55 56 57 58 59 60 61 62 63 64 65 66
- please adhere to the protocol described in [the main ipfs repo](https://github.com/jbenet/ipfs) and [paper](http://static.benet.ai/t/ipfs.pdf).
- please make branches + pull-request, even if working on the main repository
- ask questions or talk about things in [Issues](https://github.com/jbenet/go-ipfs/issues) or #ipfs on freenode.
- ensure you are able to contribute (no legal issues please-- we'll probably setup a CLA)
- run `go fmt` before pushing any code
- run `golint` and `go vet` too -- some things (like protobuf files) are expected to fail.
- if you'd like to work on ipfs part-time (20+ hrs/wk) or full-time (40+ hrs/wk), contact [@jbenet](https://github.com/jbenet)
- have fun!


## License

MIT