mirror of
https://github.com/golang/go.git
synced 2025-05-05 23:53:05 +00:00
CL 518776 dropped the ability of 'go mod init' to convert legacy pre-module dependency configuration files, such as automatically transforming a Gopkg.lock to a go.mod file with similar requirements, but some of the documentation remained. In this CL, we remove it from the cmd/go documentation. (CL 662675 is a companion change that removes it from the Modules Reference page). Updates #71537 Change-Id: Ieccc64c811c4c25a657c00e42f7362a32b5fd661 Reviewed-on: https://go-review.googlesource.com/c/go/+/662695 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@golang.org> Reviewed-by: Sean Liao <sean@liao.dev> Auto-Submit: Sean Liao <sean@liao.dev>
49 lines
1.3 KiB
Go
49 lines
1.3 KiB
Go
// Copyright 2018 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// go mod init
|
|
|
|
package modcmd
|
|
|
|
import (
|
|
"cmd/go/internal/base"
|
|
"cmd/go/internal/modload"
|
|
"context"
|
|
)
|
|
|
|
var cmdInit = &base.Command{
|
|
UsageLine: "go mod init [module-path]",
|
|
Short: "initialize new module in current directory",
|
|
Long: `
|
|
Init initializes and writes a new go.mod file in the current directory, in
|
|
effect creating a new module rooted at the current directory. The go.mod file
|
|
must not already exist.
|
|
|
|
Init accepts one optional argument, the module path for the new module. If the
|
|
module path argument is omitted, init will attempt to infer the module path
|
|
using import comments in .go files and the current directory (if in GOPATH).
|
|
|
|
See https://golang.org/ref/mod#go-mod-init for more about 'go mod init'.
|
|
`,
|
|
Run: runInit,
|
|
}
|
|
|
|
func init() {
|
|
base.AddChdirFlag(&cmdInit.Flag)
|
|
base.AddModCommonFlags(&cmdInit.Flag)
|
|
}
|
|
|
|
func runInit(ctx context.Context, cmd *base.Command, args []string) {
|
|
if len(args) > 1 {
|
|
base.Fatalf("go: 'go mod init' accepts at most one argument")
|
|
}
|
|
var modPath string
|
|
if len(args) == 1 {
|
|
modPath = args[0]
|
|
}
|
|
|
|
modload.ForceUseModules = true
|
|
modload.CreateModFile(ctx, modPath) // does all the hard work
|
|
}
|