1,137 karma · joined October 31, 2012
Sorry, but that's all this boils down to.
No chance I'd work at Buffer, given they'd halve my salary because of my zip code. Other remote jobs don't. No brainier.
Using the original package name: https://github.com/sofuture/colortest/blob/master/main.go#L7
I can refer to my fork: https://github.com/sofuture/colortest/blob/master/Gopkg.toml...
Edit: I'll fork echo in my example and show you.
I threw together an example of doing this with `dep`. I forked Fatih's color package, and am using it as `github.com/fatih/color` no problem: https://github.com/sofuture/colortest (forked dep here: https://github.com/sofuture/color)
What's the real difference between `cd ~/dev` and `cd $MYGO` (~/dev/go/src/github.com/myusername)?
Step 1: Check out code that you want to use. That's actually the only step and you can do it by hand, or with one of a multitude of tools. All the tools differ slightly, and any metadata or manifests or things like that they do aren't compatible, but the code they put in your repository is, enabling anyone to clone a repository, and instantly build the exact version of all your dependencies.
Imports also aren't full git URLs, they can be as a convenience that tells you where to get a package. You can't `go get` a specific tag, but that's fine, because `go get` isn't a package or dependency manager, it's just a convenience to grab code to your system, not to freeze a version as a dependency into your project.
Frankly, the amount of people that put their nose in the air at go is just fine with me, just makes it more of a 'secret productivity tool' I guess.
Edit: not to say it wouldn't have been nice if `dep` had been the one blessed path at version 1. Still, I have extremely little to complain about with the language and tooling since 1.4/1.5.
Anyway, more power to them, great way to filter out remotes who know what they're worth for no particular reason.