<commit_before>What is the Lockfile?
=====================

Consider the following [Packages file](packages_file.html):

    source "http://nuget.org/api/v2"

    nuget "Castle.Windsor-log4net" "~> 3.2"
    nuget "Rx-Main" "~> 2.0"

In this case we specify dependencies to `Castle.Windsor-log4net` and `Rx-Main`.
Both packages have dependencies to further NuGet packages. 
The `package.lock` file is a concrete resolution of all direct or indirect dependencies of your application.

    [lang=textfile]
    NUGET
      remote: http://nuget.org/api/v2
      specs:
        Castle.Windsor (2.1)
        Castle.Windsor-log4net (3.3)
        Rx-Core (2.1)
        Rx-Main (2.0)
        log (1.2)
        log4net (1.1)

Further runs of [paket install](packet_install.htm) will not analyze the `packages.fsx` file again.
So if you commit `package.lock` to your version control system, 
it ensures that other developers, as well as your build servers, 
will always use the same packages that you are using now.<commit_msg>Use the correct dependency resolution in the docs<commit_after>What is the Lockfile?
=====================

Consider the following [Packages file](packages_file.html):

    source "http://nuget.org/api/v2"

    nuget "Castle.Windsor-log4net" "~> 3.2"
    nuget "Rx-Main" "~> 2.0"

In this case we specify dependencies to `Castle.Windsor-log4net` and `Rx-Main`.
Both packages have dependencies to further NuGet packages. 
The `package.lock` file is a concrete resolution of all direct or indirect dependencies of your application.

    [lang=textfile]
    NUGET
      remote: http://nuget.org/api/v2
      specs:
        Castle.Core (3.3.0)
        Castle.Core-log4net (3.3.0)
        Castle.LoggingFacility (3.3.0)
        Castle.Windsor (3.3.0)
        Castle.Windsor-log4net (3.3.0)
        Rx-Core (2.2.5)
        Rx-Interfaces (2.2.5)
        Rx-Linq (2.2.5)
        Rx-Main (2.2.5)
        Rx-PlatformServices (2.3)
        log4net (1.2.10)

Further runs of [paket install](packet_install.htm) will not analyze the `packages.fsx` file again.
So if you commit `package.lock` to your version control system, 
it ensures that other developers, as well as your build servers, 
will always use the same packages that you are using now.
{'fraction_non_alphanumeric': 0.12, 'fraction_numerical': 0.029333333333333333, 'mean_word_length': 2.9911347517730498, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6166635', 'n_tokens_mistral': 765, 'n_tokens_neox': 725, 'n_words': 240}