Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2 branch #102

Closed
Scapal opened this issue Nov 3, 2016 · 4 comments
Closed

v2 branch #102

Scapal opened this issue Nov 3, 2016 · 4 comments

Comments

@Scapal
Copy link

Scapal commented Nov 3, 2016

Could you move the master branch to a v2 branch in order to be compatible with gopkg.in and glide ?

@pkieltyka
Copy link
Member

I'm not a fan of either gopkg.in or glide. I prefer just normal vendoring (ie. govendor).

I can make a v2 branch that mirrors master if it helps others though. What is required? (can you give me the debrief before I say yes/no), thanks.

@Scapal
Copy link
Author

Scapal commented Nov 3, 2016

Being a junior Gopher, I'm interested in your point of view.
Does using govendor mean that you put the vendor tree in your Git as well?
The purpose of a glide.lockis to avoid that.

@pkieltyka
Copy link
Member

@Scapal a group that is part core and part community is working on a dependency management tool -- here is the draft: https://docs.google.com/document/d/1qnmjwfMmvSCDaY4jxPmLAccaaUI5FfySNE90gB0pTKQ/edit

since Go 1.7, the go cli will recognize packages in a ./vendor folder first then search $GOPATH for depedencies. Look up "go vendoring". The missing part today which the draft above covers and tools like glide and govendor implement is actually fetching and managing the files in ./vendor/

a good approach (like govendor does), is store the lock file in ./vendor/vendor.json

and yes absolutely commit your vendor tree to git. it's actually a very nice experience.

govendor is great, except the cli is kind of awkward because its so powerful. hopefully the guys working on the dep tool above will achieve something very smooth (im confident they will).

@Scapal
Copy link
Author

Scapal commented Nov 3, 2016

The dep tool in the draft mention:

Lockfile and Manifest are two files. Located in the project root.

So it seems their perspective is to only save those in the git and not the whole vendor tree.
It is the same approach used by Composer for PHP and Glide.
Wouldn't it be awkward for an open-source project to include the full dependencies in vendor?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants