sac dh22
sac dh22

Reputation: 45

Pushing a whole golang package to github

I have built a small application locally in golang. My directory structure is as follows.

gocode/
      src/
          github.com/
                    travel/
                          config/
                          server/
                          routes/
                          main.go

      pkg/
          linux/
               github.com/
                    // projects with .a extension 
               golang.org/
                         x/net/
                         x/oauth2
      bin/

I went through a lot of documentations, which states to push only /src folder to github as best practice.

I am confused with what happens with packages like golang.org/x/net which are not inside /src directory.

So we need to run go import "net/http" in production server as well and create executable binaries.

I've come from a nodejs background so is it something like we do "npm install" in nodejs.But the thing is we have a package.json file in case of node. Anyways please help me with this confusion.

Upvotes: 0

Views: 558

Answers (1)

ollien
ollien

Reputation: 4776

You would only push the contents of the src/github.com/travel directory. go get handles dependency resolution for you when someone wants to download your package. Take a look at something like logrus. Running go get github.com/sirupsen/logrus will download all dependencies needed to build the package. This includes any of your golang.org/x/ packages.

Upvotes: 1

Related Questions