-
Notifications
You must be signed in to change notification settings - Fork 1k
Explain useage of manifest and lock in the FAQ #516
Conversation
FAQ.md
Outdated
@@ -16,6 +18,20 @@ Summarize the question and quote the reply, linking back to the original comment | |||
* [Can I put the manifest and lock in the vendor directory?](#can-i-put-the-manifest-and-lock-in-the-vendor-directory) | |||
* [Why did dep use a different revision for package X instead of the revision in the lock file?](#why-did-dep-use-a-different-revision-for-package-x-instead-of-the-revision-in-the-lock-file) | |||
|
|||
## What is the difference between the manifest and lock? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's revise to
"What is the difference between Gopkg.toml (the "manifest") and Gopkg.lock (the "lock")?"
That way we don't assume people are familiar with the abstract terminology of manifest/lock
I've updated the question to include the manifest and lock filenames. Looks like the Travis build needs to be restarted though. |
@sdboyer Is there anything else left that I need to do before this can be merged? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
couple little nits
FAQ.md
Outdated
## When should I use dependencies, overrides, required, or ignored in the manifest? | ||
|
||
* Use `dependencies` to constrain a [direct dependency](#what-is-a-direct-or-transitive-dependency) to a specific branch, version range, revision, or specify an alternate source such as a fork. | ||
* Use `overrides` to constrain a [transitive dependency](#what-is-a-direct-or-transitive-dependency). See [How do I constrain a transitive dependency's version?](#how-do-i-constrain-a-transitive-dependencys-version) for more details on when each section applies. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's add a note here that overrides should be used cautiously, sparingly and temporarily.
FAQ.md
Outdated
|
||
> The manifest describes user intent, and the lock describes computed outputs. There's flexibility in manifests that isn't present in locks..., as the "branch": "master" constraint will match whatever revision master HAPPENS to be at right now, whereas the lock is nailed down to a specific revision. | ||
> | ||
> This flexibility is important because it allows us to provide easy commands (e.g. dep ensure -update) that can manage an update process for you, within the constraints you specify, AND because it allows your project, when imported by someone else, to collaboratively specify the constraints for your own dependencies. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
backticks around dep ensure -update
sorry, too many plates 😄 |
totes brills 💇♂️ |
No description provided.