github.com/docker/docker-ce@v17.12.1-ce-rc2+incompatible/README.md (about)

     1  # Docker CE
     2  
     3  This repository hosts open source components of Docker CE products. The
     4  `master` branch serves to unify the upstream components on a regular
     5  basis. Long-lived release branches host the code that goes into a product
     6  version for the lifetime of the product.
     7  
     8  This repository is solely maintained by Docker, Inc.
     9  
    10  ## Issues
    11  
    12  There are separate issue-tracking repos for the end user Docker CE
    13  products specialized for a platform. Find your issue or file a new issue
    14  for the platform you are using:
    15  
    16  * https://github.com/docker/for-linux
    17  * https://github.com/docker/for-mac
    18  * https://github.com/docker/for-win
    19  * https://github.com/docker/for-aws
    20  * https://github.com/docker/for-azure
    21  
    22  ## Unifying upstream sources
    23  
    24  The `master` branch is a combination of components adapted from
    25  different upstream git repos into a unified directory structure using the
    26  [moby-components](https://github.com/shykes/moby-extras/blob/master/cmd/moby-components)
    27  tool.
    28  
    29  You can view the upstream git repos in the
    30  [components.conf](components.conf) file. Each component is isolated into
    31  its own directory under the [components](components) directory.
    32  
    33  The tool will import each component git history within the appropriate path.
    34  
    35  For example, this shows a commit
    36  is imported into the component `engine` from
    37  [moby/moby@a27b4b8](https://github.com/moby/moby/commit/a27b4b8cb8e838d03a99b6d2b30f76bdaf2f9e5d)
    38  into the `components/engine` directory.
    39  
    40  ```
    41  commit 5c70746915d4589a692cbe50a43cf619ed0b7152
    42  Author: Andrea Luzzardi <aluzzardi@gmail.com>
    43  Date:   Sat Jan 19 00:13:39 2013
    44  
    45      Initial commit
    46      Upstream-commit: a27b4b8cb8e838d03a99b6d2b30f76bdaf2f9e5d
    47      Component: engine
    48  
    49   components/engine/container.go       | 203 ++++++++++++++++++++++++++++...
    50   components/engine/container_test.go  | 186 ++++++++++++++++++++++++++++...
    51   components/engine/docker.go          | 112 ++++++++++++++++++++++++++++...
    52   components/engine/docker_test.go     | 175 ++++++++++++++++++++++++++++...
    53   components/engine/filesystem.go      |  52 ++++++++++++++++++++++++++++...
    54   components/engine/filesystem_test.go |  35 +++++++++++++++++++++++++++
    55   components/engine/lxc_template.go    |  94 ++++++++++++++++++++++++++++...
    56   components/engine/state.go           |  48 ++++++++++++++++++++++++++++...
    57   components/engine/utils.go           | 115 ++++++++++++++++++++++++++++...
    58   components/engine/utils_test.go      | 126 ++++++++++++++++++++++++++++...
    59   10 files changed, 1146 insertions(+)
    60  ```
    61  
    62  ## Updates to `master` branch
    63  
    64  Main development of new features should be directed towards the upstream
    65  git repos. The `master` branch of this repo will periodically pull in new
    66  changes from upstream to provide a point for integration.
    67  
    68  ## Branching for release
    69  
    70  When a release is started for Docker CE, a new branch will be created
    71  from `master`. Branch names will be `YY.MM` to represent the time-based
    72  release version of the product, e.g. `17.06`.
    73  
    74  ## Adding fixes to release branch
    75  
    76  Note: every commit of a fix should affect files only within one component
    77  directory.
    78  
    79  ### Fix available upstream
    80  
    81  A PR cherry-picking the necessary commits should be created against
    82  the release branch. If the the cherry-pick cannot be applied cleanly,
    83  the logic of the fix should be ported manually.
    84  
    85  ### No fix yet
    86  
    87  First create the PR with the fix for the release branch. Once the fix has
    88  been merged, be sure to port the fix to the respective upstream git repo.
    89  
    90  ## Release tags
    91  
    92  There will be a git tag for each release candidate (RC) and general
    93  availablilty (GA) release. The tag will only point to commits on release
    94  branches.