download download modules to local cache
edit edit go.mod from tools or scripts
graph print module requirement graph
init initialize new module in current directory
tidy add missing and remove unused modules
vendor make vendored copy of dependencies
verify verify dependencies have expected content
why explain why packages or modules are needed
Use "go help mod <command>" for more information about a command.
go mod tidy添加缺失的包,移除未使用的包
创建项目,文件路径如下
├── greetings
│ └── greetings.go
│ ├── hello
│ │ ├── hello
│ │ └── hello.go
greetings.go:
package greetings
import "fmt"
func Hello(name string) string {
message := fmt.Sprintf("hi, %v, welcome", name)
return message
}
hello.go:
package main
import (
"example.com/greetings"
"fmt"
)
func main() {
message := greetings.Hello("gladys")
fmt.Println(message)
}
cd hello
go mod edit -replace example.com/greetings=../greetings
go get example.com/greetings(go mod tidy可能也行)
或者go mod edit -require=example.com/greetings@v1.1.0
此时,发现包可以找到了