From c0336bd45428638c7cabdb5c362d27b19fb58a36 Mon Sep 17 00:00:00 2001 From: Steffen Forkmann Date: Wed, 17 Sep 2014 16:04:33 +0200 Subject: [PATCH] More github docs - references #112 --- Paket.sln | 2 ++ docs/content/dependencies_file.md | 6 ++++-- docs/content/faq.md | 2 +- docs/content/github_dependencies.md | 25 ++++++++++++++++++++++--- docs/content/index.md | 2 +- docs/files/img/github_reference.png | Bin 0 -> 4873 bytes docs/tools/templates/template.cshtml | 4 ++++ 7 files changed, 34 insertions(+), 7 deletions(-) create mode 100644 docs/files/img/github_reference.png diff --git a/Paket.sln b/Paket.sln index 7b1106e212..5b7df8658f 100644 --- a/Paket.sln +++ b/Paket.sln @@ -35,8 +35,10 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "content", "content", "{8E6D docs\content\convert_from_nuget.md = docs\content\convert_from_nuget.md docs\content\dependencies_file.md = docs\content\dependencies_file.md docs\content\faq.md = docs\content\faq.md + docs\content\github_dependencies.md = docs\content\github_dependencies.md docs\content\index.md = docs\content\index.md docs\content\lock_file.md = docs\content\lock_file.md + docs\content\nuget_dependencies.md = docs\content\nuget_dependencies.md docs\content\paket_install.md = docs\content\paket_install.md docs\content\paket_outdated.md = docs\content\paket_outdated.md docs\content\paket_update.md = docs\content\paket_update.md diff --git a/docs/content/dependencies_file.md b/docs/content/dependencies_file.md index ee6e657ba4..19df2a552e 100644 --- a/docs/content/dependencies_file.md +++ b/docs/content/dependencies_file.md @@ -13,11 +13,13 @@ To give you an overview, this is what Paket's `paket.dependencies` file looks li nuget "FAKE" "~> 3.4" nuget "FSharp.Formatting" "~> 2.4" nuget "DotNetZip" "~> 1.9.3" - nuget "SourceLink.Fake" "~> 0.3" + nuget "SourceLink.Fake" "~> 0.3" + github forki/FsUnit FsUnit.fs // Only in 0.2.0 alpha versions The syntax looks familiar to users of Ruby's [bundler](http://bundler.io/) [Gemfile](http://bundler.io/gemfile.html). This is intended because it proved to work well for the authors of Paket. -The file specifies that Paket's dependencies should be downloaded from [nuget.org](http://www.nuget.org) and that we need e.g. [`FAKE`](http://fsharp.github.io/FAKE/) [in version `3.4 <= x < 3.5`](#pessimistic-version-constraint) as a build tool. +The file specifies that Paket's dependencies should be downloaded from [nuget.org](http://www.nuget.org) and that we need e.g. +[`FAKE`](http://fsharp.github.io/FAKE/) [in version `3.4 <= x < 3.5`](#pessimistic-version-constraint) as a build tool. Only direct dependencies should be listed. Paket uses this definition to compute a concrete dependency resolution, which also includes indirect dependencies. The resulting dependency graph is then persisted to the [`paket.lock` file](lock_file.html). diff --git a/docs/content/faq.md b/docs/content/faq.md index 94fb8aada0..349cacaf61 100644 --- a/docs/content/faq.md +++ b/docs/content/faq.md @@ -10,7 +10,7 @@ Paket on the other hand maintains this information on a consistent and stable ba The [`paket outdated` command](paket_outdated.html) lists packages that have new versions available. -Future versions of Paket will also enable one to [reference files directly from git repositories](https://github.com/fsprojects/Paket/issues/9). +Paket also enables one to [reference files directly from GitHub repositories](github_dependencies.html). ## I'm already using NuGet. How can I convert to Paket? diff --git a/docs/content/github_dependencies.md b/docs/content/github_dependencies.md index fe8cf2f727..36cd86ec73 100644 --- a/docs/content/github_dependencies.md +++ b/docs/content/github_dependencies.md @@ -2,10 +2,29 @@ ** Only in [0.2.0 alpha versions](https://www.nuget.org/packages/Paket/0.2.0-alpha001) ** -Paket allows to link files from [Github.com](http://www.github.com) into your projects. +Paket allows to link files from [github.com](http://www.github.com) into your projects. ## Referencing a single file -You can reference a single file from [Github.com](http://www.github.com) simply by specifying the source repository and the file name in the [`paket.dependencies` file](dependencies_file.html): +You can reference a single file from [github.com](http://www.github.com) simply by specifying the source repository and the file name in the [`paket.dependencies` file](dependencies_file.html): - github forki/FsUnit FsUnit.fs \ No newline at end of file + github forki/FsUnit FsUnit.fs + +If you run the [`paket update` command](paket_update.html), then it will add a new section to your [`paket.lock` file](lock_file.html): + + [lang=batchfile] + GITHUB + remote: forki/FsUnit + specs: + FsUnit.fs (7623fc13439f0e60bd05c1ed3b5f6dcb937fe468) + +As you can see the file is pinned to a concrete commit. This allows you to reliably use the same file version in succeeding builds. + +If you want to reference the file in one of your project files then add an entry to the project's [`paket.references` file.](references_files.html): + + [lang=batchfile] + File:FsUnit.fs + +This will reference the linked file directly into your project. + +![alt text](img/github_reference.png "Github file referenced in project") \ No newline at end of file diff --git a/docs/content/index.md b/docs/content/index.md index 4711dc36ab..d06cc33f2c 100644 --- a/docs/content/index.md +++ b/docs/content/index.md @@ -1,6 +1,6 @@ # What is Paket? -Paket is a dependency manager for .NET and [Mono][mono] projects, which is designed to work well with [NuGet][nuget] packages. +Paket is a dependency manager for .NET and [Mono][mono] projects, which is designed to work well with [NuGet][nuget] packages and also allows to [reference files directly from GitHub repositories](github_dependencies.html). It enables precise and predictable control over what packages the projects within your application reference. More details are in the [FAQ](faq.html). [mono]: http://www.mono-project.com/ diff --git a/docs/files/img/github_reference.png b/docs/files/img/github_reference.png new file mode 100644 index 0000000000000000000000000000000000000000..f1a0457a0a83420af5fa49e23998054b2f938166 GIT binary patch literal 4873 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 zpaket.dependencies
  • paket.lock
  • paket.references
  • +
  • +
  • NuGet dependencies
  • +
  • GitHub dependencies
  • +
  • API Reference