Permalink
Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
41 lines (33 sloc) 1.75 KB

Setup your mc Github Repository

Fork mc upstream source repository to your own personal repository.

$ mkdir -p $GOPATH/src/github.com/minio
$ cd $GOPATH/src/github.com/minio
$ git clone https://github.com/$USER_ID/mc
$ cd mc
$ make
$ mc --help

Developer Guidelines

mc welcomes your contribution. To make the process as seamless as possible, we ask for the following:

  • Go ahead and fork the project and make your changes. We encourage pull requests to discuss code changes.

    • Fork it
    • Create your feature branch (git checkout -b my-new-feature)
    • Commit your changes (git commit -am 'Add some feature')
    • Push to the branch (git push origin my-new-feature)
    • Create new Pull Request
  • If you have additional dependencies for mc, mc manages its dependencies using govendor

    • Run go get foo/bar
    • Edit your code to import foo/bar
    • Run make pkg-add PKG=foo/bar from top-level folder
  • If you have dependencies which needs to be removed from mc

    • Edit your code to not import foo/bar
    • Run make pkg-remove PKG=foo/bar from top-level folder
  • When you're ready to create a pull request, be sure to:

    • Have test cases for the new code. If you have questions about how to do it, please ask in your pull request.
    • Run go fmt
    • Squash your commits into a single commit. git rebase -i. It's okay to force update your pull request.
    • Make sure make build completes.
  • Read Effective Go article from Golang project

    • mc project is conformant with Golang style
    • if you happen to observe offending code, please feel free to send a pull request