Auto: 1 рд░реЗрдкреЛ рдореЗрдВ рдПрдХрд╛рдзрд┐рдХ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рдкреНрд▓рдЧрдЗрдиреНрд╕

рдХреЛ рдирд┐рд░реНрдорд┐рдд 28 рдЬрдире░ 2020  ┬╖  16рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: intuit/auto

рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ?

рдЕрднреА рдЖрдк рдкреНрд░рддрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗрд╡рд▓ 1 рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рд░реЗрдкреЛ рдореЗрдВ chrome-web-store рдкреНрд▓рдЧрдЗрди npm рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред

рдЖрдк рдЬреЛ рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ

рдпрд╣ рд╕реАрдорд╛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ auto git рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдкреИрдХреЗрдЬ рдХреА рдХреЛрдИ рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИред

npm рдкреНрд▓рдЧрдЗрди рдореЗрдВ рдореИрдВрдиреЗ рджрд┐рдЦрд╛рдпрд╛ рд╣реИ рдХрд┐ рдЖрдк sub-packages рд▓рд┐рдП рдЪреЗрдВрдЬрд▓реЙрдЧ рдкреНрд░рдмрдВрдзрди рдФрд░ рдЕрд▓рдЧ рд░рд┐рд▓реАрдЬ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм рд▓рдЧрднрдЧ lerna рдФрд░ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ core рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдкреНрд▓рдЧрдЗрди рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╛рдЗрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ (рд╕рднреА git-tag рдХреЛ рдЫреЛрдбрд╝рдХрд░) рд╣рдо рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдХреБрдЫ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдЙрджрд╛рд╣рд░рдг: npm рдкреНрд▓рдЧрдЗрди

  1. рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ рдпрд╣ package.json (рдПрдХрд▓ рдпрд╛ рд▓рд░реНрди) рдЦреЛрдЬрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ
  2. auto рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреА рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЛ package рд╣рд┐рд╕реНрд╕рд╛ рдорд╛рдирддрд╛ рд╣реИ
  3. auto рдкреНрд░рддреНрдпреЗрдХ package рд▓рд┐рдП рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдЪреИрдВрдЬ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИ

рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЦрд░рд╛рдм рдЕрдиреБрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП рд╕рднреА рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ git-tg рдкреНрд▓рдЧрдЗрди рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА)ред

рд╕рдВрднрд╛рд╡рд┐рдд рдореБрджреНрджреЗ

  • рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрдорд┐рдЯ, рдЯреИрдЧ рдФрд░ рдкреБрд╢ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╢реЛрд░ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рд╢рд╛рдпрдж рдЙрди рдЧрд┐рдЯ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдХреЛрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИ? рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ package рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрдорд┐рдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ред
  • рд░реВрдЯ рдЪреИрдВрдЬ - рд╢рд╛рдпрдж рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдкреНрд▓рдЧрдЗрди рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдмрдВрдзрд┐рдд package рд▓рд┐рдП рдПрдХ рдЪреЗрдВрдЬрд▓реЙрдЧ рднреА рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛

рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ рдЬрд┐рди рдкрд░ рдЖрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ

рдХреБрдЫ рднреА рд╕рдЪ рдирд╣реАрдВред

рд╕рднреА 16 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рд╕реЛрдЪрдХрд░ рдореИрдВ рд╢рд╛рдпрдж рдПрдХ рдирдпрд╛ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реВрдВред

{
  // Still have some global config at root
  "name": "Andrew Lisowski",
  "email": "[email protected]",
  // Plugins used for every package
  "plugins": ["conventional-commits"],
  "packages": [
    // Target specific directories and apply a set of plugins to them
    {
      "target": "www",
      "plugins": ["git-tag"]
    },
    {
      "target": "api",
      "plugins": ["npm"]
    },
    // Specify a pattern or even and array of patterns or directories
    {
      "target": ["packages/**",  "utils"],
      "plugins": ["npm"]
    },
    {
      "target": "web-store",
      "plugins": [
        "chrome-web-store",
        // Whole lifecycle is run for each package so you can have package plugins
        ["upload-assets", { "assets": ["./path/to/file"] }]
      ]
    }
  ]
}

рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрдИ рдЪреАрдЬреЛрдВ рдкрд░ shipit рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдЯрд░реЗрдЯрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдорд╛рди рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХрдорд┐рдЯреНрд╕ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдкреВрд░реНрд╡ рдирд╡реАрдирддрдо рдХреЗ рд▓рд┐рдП:

  1. рд╕рднреА рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рджреМрдбрд╝реЗрдВ
  2. рдЪреИрдВрдЬ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЙрдкрдЬ
  3. рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдЪреИрдВрдЬ рдХрд░реЗрдВ
  4. рд╕рдВрд╕реНрдХрд░рдг рдЯрдХрд░рд╛рдП рдЬрд╛рдиреЗ рддрдХ рдЙрдкрдЬ
  5. рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░реЗрдВ
  6. рдЕрдВрдд рддрдХ рдЪрд▓рд╛рдПрдВ

рдЗрд╕ рд╕реЗрдЯрдЕрдк рдХреЗ рд╕рд╛рде рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рд░реНрди рдХреЛ рдПрдХ рд╕рд╛рде рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

{
  "name": "Andrew Lisowski",
  "email": "[email protected]",
  "packages": [
    {
      "target": "packages/**",
      "plugins": ["npm"]
    }
  ]
}

рдпрджрд┐ package рдХреЛрдИ рдХрдорд┐рдЯ рдорд┐рд▓рд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреЛрдИ рд░рд┐рд▓реАрдЬрд╝ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред рдпрд╣ рд╕реНрд╡рддрдВрддреНрд░ рдореЛрдиреЛрд░реЗрдкреЛ рдкреНрд░рдмрдВрдзрди рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рдФрд░ рдмрд┐рдирд╛ lerna ред рдпрджрд┐ рдЖрдк рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдореЛрдиреЛрд░реЗрдкреЛ рдХреНрд▓рд╛рд╕рд┐рдХ рдорд╛рд░реНрдЧ рдкрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдЗрд╕рдХреА рдПрдХ рдФрд░ рдЕрдЪреНрдЫреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд░реЗрдкреЛ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд░реНрдЬрдирд┐рдВрдЧ рд╕реНрдХреАрдореЛрдВ ( fixed рдФрд░ independent ) рдХреЗ рд╕рд╛рде рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛ leran рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

{
  "name": "Andrew Lisowski",
  "email": "[email protected]",
  "packages": [
    {
      "target": "fixed-monorepo",
      "plugins": ["npm"]
    },
    {
      "target": "independent-monorepo",
      "plugins": ["npm"]
    }
  ]
}

рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рд░реЗрдкреЛ рдореЗрдВ рдХреНрд░реЛрдо-рд╡реЗрдм-рд╕реНрдЯреЛрд░ рдкреНрд▓рдЧрдЗрди рдПрдирдкреАрдПрдо рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рд╣реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрдорд┐рдЯ, рдЯреИрдЧ рдФрд░ рдкреБрд╢ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╢реЛрд░ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рд╢рд╛рдпрдж рдЙрди рдЧрд┐рдЯ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдХреЛрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИ? рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрдорд┐рдЯ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рд╣рд╛рдЗрдмреНрд░рд┐рдб рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛ, рд▓реЗрдХрд┐рди рд╣рдо рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдзрдХреНрдХрд╛ рджреЗрддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЯреИрдЧ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ рдЬрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝реЛрд▓реНрдбрд░ рдЕрдкрдиреА рдЦреБрдж рдХреА рдкреИрдХреЗрдЬреНрдб рд░рд┐рд▓реАрдЬ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреИрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдк рдЕрдВрдд рдореЗрдВ рдПрдХ рдмрдирд╛рддреЗ рд╣реИрдВ?

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рд╕реЛрдЪрдХрд░ рдореИрдВ рд╢рд╛рдпрдж рдПрдХ рдирдпрд╛ рд╢реАрд░реНрд╖ рд╕реНрддрд░реАрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реВрдВред

рдореБрдЭреЗ рдкреНрд░рддрд┐ рдкреИрдХреЗрдЬ рд░рд┐рд▓реАрдЬ рдЕрдиреБрднрд╡ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред docs рдкреИрдХреЗрдЬ рдмрдирд╛рдо рдЖрдкрдХреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд s3/gh-рдкреГрд╖реНрдареЛрдВ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХреБрдЫ рд▓рд╛рдн рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд░рд┐рд▓реАрдЬ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдкреИрдХреЗрдЬ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдПрдХ рдмрд╛рдд рд╣реИред рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ:

{
  "name": "Andrew Lisowski",
  "email": "[email protected]",
  "packages": [
    {
      "target": "packages/**",
      "plugins": ["npm"]
    },
    {
      "target": "packages/chrome-ext",
      "plugins": ["chrome-web-store"]
    },
  ]
}

рдХреНрдпрд╛ chrome-ext рдкреИрдХреЗрдЬ npm _рдФрд░_ webstore рджреЛрдиреЛрдВ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ? рдпрд╛ npm рд░рд┐рд▓реАрдЬ рдЬреАрдд рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЯреИрдЧ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ рдЬрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝реЛрд▓реНрдбрд░ рдЕрдкрдиреА рдЦреБрдж рдХреА рдкреИрдХреЗрдЬреНрдб рд░рд┐рд▓реАрдЬ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреИрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдк рдЕрдВрдд рдореЗрдВ рдПрдХ рдмрдирд╛рддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд▓рд░реНрди рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдХрдорд┐рдЯ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЯреИрдЧред рдкреНрд░рддреНрдпреЗрдХ рдЯреИрдЧ рддрдм рд╕реНрд╡рдпрдВ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдмрди рдЬрд╛рддрд╛ рд╣реИ

рдХреНрдпрд╛ chrome-ext рдкреИрдХреЗрдЬ npm рдФрд░ рд╡реЗрдмрд╕реНрдЯреЛрд░ рджреЛрдиреЛрдВ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ? рдпрд╛ рдПрдирдкреАрдПрдо рд░рд┐рд▓реАрдЬ рдЬреАрддрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣рд╛рдБ рдпрд╣ рджреЛрдиреЛрдВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд┐рд░реНрдл рдЦрд░рд╛рдм рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИред рдЖрдк рдЗрд╕реЗ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рдЬрд┐рд╕реНрдЯреНрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ (рдЙрджрд╛: npm рдФрд░ github рдкреИрдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА)

{
  "name": "Andrew Lisowski",
  "email": "[email protected]",
  "packages": [
    {
      "target": "packages/**",
      "plugins": [["npm", { registry: "https://npm" }]]
    },
    {
      "target": "packages/**",
      "plugins": [["npm", { registry: "https://github-package-registry" }]]
    },
  ]
}

рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ... рдФрд░ рдЬрдЯрд┐рд▓ ЁЯШЕ

рдореИрдВ рдЖрдо рддреМрд░ рдкрд░ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдЕрддреНрдпрдзрд┐рдХ рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рд╣реВрдВ (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рддрд░реАрдХреЛрдВ рд╕реЗ рдЯреВрдЯ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдерд┐рддрд┐ рдХреИрд╕реА рджрд┐рдЦрддреА рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд┐рд░реНрдл npm рдкреНрд▓рдЧрдЗрди рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЗрд╕рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рднреА рдпрд╣реА рд╕рд╡рд╛рд▓ред

рдЧрд┐рдЯ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧрд┐рдЯ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдЖрдо рддреМрд░ рдкрд░ рдкреНрд▓рдЧрдЗрди рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдХрд┐рд╕реА рдкреНрд▓рдЧрдЗрди рдХреЛ рдХрдорд┐рдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдХреЗрд╡рд▓ рдХрдорд┐рдЯ-рд╕рдХреНрд╖рдо рд╣реБрдХ рдореЗрдВ рдЯреИрдк рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдкреБрд╢рд┐рдВрдЧ рдХреЛ рдХреЗрд╡рд▓ рдХреЛрд░ рдореЗрдВ рд╣реА рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реАрдЖрдИ рдХреИрд╕реЗ рдЪрд▓рддрд╛ рд╣реИ рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдкрд░ рдЗрд╕рдХрд╛ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд┐рд░реНрдл рдПрдХ npm рдкреНрд▓рдЧрдЗрди рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛ рдЖрдЬ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЙрд╕реЗ packages рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рддреЛ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдиреЛрдб рдПрдкреАрдЖрдИ рдкрдХреНрд╖ рд╣реЛрдВрдЧреЗ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рджреГрд╢реНрдпрдорд╛рди рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

рдпрджрд┐ рдХрд┐рд╕реА рдкреНрд▓рдЧрдЗрди рдХреЛ рдХрдорд┐рдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдХреЗрд╡рд▓ рдХрдорд┐рдЯ-рд╕рдХреНрд╖рдо рд╣реБрдХ рдореЗрдВ рдЯреИрдк рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рд╣реИред рдСрдЯреЛ рдХреЗ рднреАрддрд░ рдЗрд╕ рдЧрд┐рдЯ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рдФрдкрдЪрд╛рд░рд┐рдХ рдмрдирд╛рдирд╛ рд╢рд╛рдпрдж рдЙрдкрдпреЛрдЧреА рд╣реИред рдФрд░ рдЕрдЧрд░ рд╡реЗ рдЗрд╕ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдереЛрдбрд╝рд╛ рдФрд░ рд╢реЛрд░ (рдЙрджрд╛: рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдФрд░ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдзрдХреНрдХрд╛)

рдореИрдВ рдпрд╣ рднреА рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рд╕рд╛рде рдСрдЯреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд▓реЗрдХрд░ рдЖрдпрд╛ рдЬреЛ рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореВрд▓ рд░реВрдк рд╕реЗ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдореЛрдиреЛрд░реЗрдкреЛ рд╣реИ рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдИ рдЙрдк-рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреА рдЕрдкрдиреА .autorc рдлрд╝рд╛рдЗрд▓ рд╣реЛрддреА рд╣реИ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдЙрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреА рд╣реИред

рдлрд┐рд░ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдкреНрд░реАрдлрд╝рд┐рдХреНрд╕ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЬрд╝рд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдордп рдкрд░ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЙрдк-рдкреНрд░реЛрдЬреЗрдХреНрдЯ sub-project/v1.4.5 рд░рд┐рд▓реАрдЬрд╝ рдХреЛ sub-project2/v9.9.9 рдЯреИрдЧ рдорд┐рд▓реЗрдЧрд╛

рдСрдЯреЛ рддрдм рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП git describe --tags --matches "sub-project1/*" рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╕рд┐рд░реНрдл рдПрдХ рд╡рд┐рдЪрд╛рд░ред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдХрд╛рдлреА рдХрд░реАрдм рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВрдиреЗ
рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдореБрдЭреЗ рдЙрд╕ рдзреНрд╡рдЬ рдХреЛ рдЕрдм рддрдХ рдХреЗ рдХреБрдЫ рдЖрджреЗрд╢реЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдкрдбрд╝рд╛ рд╣реИ (-рдореИрдЪ) рдФрд░
рдпрд╣ рдХрд╛рдлреА рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

рдореИрдВ "рдкреИрдХреЗрдЬ" рдлрд╝реАрд▓реНрдб рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рдЧрдпрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рд┐рд░реНрдл рдФрд░
"autorc" s . рдХреА рд╕рд░рдгреА

рдЙрдкрд╕рд░реНрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдирд╛рдо рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реБрдХ рдЬреЛрдбрд╝рд╛ рд╣реИред рдЗрд╕
рдЕрдЧрд░ рдкреНрд▓рдЧрдЗрди рдмрд╣реБ рдкреИрдХреЗрдЬ рд╕рдВрдЧрдд рд╣реИ рддреЛ рдСрдЯреЛ рдХреЛ рд╕рд┐рдЧреНрдирд▓ рдореЗрдВ рднреА рдорджрдж рдХрд░реЗрдЧрд╛

рдмреБрдзрд╡рд╛рд░, 29 рдЬрдирд╡рд░реА, 2020 рдХреЛ рд░рд╛рдд 9:11 рдмрдЬреЗ рдПрд▓реЗрдЬрд╛рдВрджреНрд░реЛ рдмреИрд░рд┐рдПрдВрдЯреЛрд╕ <
рд╕реВрдЪрдирд╛рдПрдВ@github.com> рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рдпрд╣ рднреА рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рд╕рд╛рде рдСрдЯреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдЖрдпрд╛
рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЬреЛ рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореВрд▓ рд░реВрдк рд╕реЗ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдореЛрдиреЛрд░реЗрдкреЛ рд╣реИ рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдИ рдЙрдк-рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ
рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХреА рдЕрдкрдиреА .autorc рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рднреА рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░ рд╕рдХрддреА рд╣реИ
рдкреНрд░рддреНрдпреЗрдХ рдЙрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдлрд┐рд░ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдЙрдкрд╕рд░реНрдЧ рд░рдЦрдирд╛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐
рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдордп рдкрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП a
рдЙрдк-рдкрд░рд┐рдпреЛрдЬрдирд╛1 рдХреЗ рд╡рд┐рдореЛрдЪрди рдХреЛ рдЙрдк-рдкрд░рд┐рдпреЛрдЬрдирд╛/v1.4.5 рдХреЗ рд╕рд╛рде рдЯреИрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░
рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЙрдк-рдкреНрд░реЛрдЬреЗрдХреНрдЯ2/v9.9.9 рдЯреИрдЧ рдорд┐рд▓реЗрдЧрд╛

рдСрдЯреЛ рддрдм git рд╡рд░реНрдгрди --tags --matches . рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ
"рдЙрдк-рдкреНрд░реЛрдЬреЗрдХреНрдЯ1/*" рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рддрджрдиреБрд╕рд╛рд░ рдЯреИрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рд╕рд┐рд░реНрдл рдПрдХ рд╡рд┐рдЪрд╛рд░ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рд╕реВрддреНрд░ рдХреЛ рд▓рд┐рдЦрд╛ рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/intuit/auto/issues/917?email_source=notifications&email_token=AAJDEBGUZR5HF6P3OKRILTDRAJOOXA5CNFSM4KMLWYF2YY3PNVWWK3TUL52HS4DFVREXGEK43VMVBW63LNMVW800GOZLOOR9 рдореБрджреНрджрд╛
рдпрд╛ рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAJDEBDX72NB5Z7ZJPTDHVLRAJOOXANCNFSM4KMLWYFQ
.

рд╡рд╛рдкрд╕ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдкрдврд╝ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдЙрддреНрд╕рд╛рд╣рд┐рдд рд╣реВрдВ! рдХрдИ рдЯреИрдЧ рдЙрдкрд╕рд░реНрдЧ w/рдкреИрдХреЗрдЬ рдирд╛рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ packages рдлрд╝реАрд▓реНрдб рдкрд╕рдВрдж рд╣реИред

@hipsstersmoothie рдЖрдЬ рд╢рд┐рдкрд┐рдЯ рдХреЗ рд╕рд╛рде 2 npm рд░рдЬрд┐рд╕реНрдЯреНрд░рд┐рдпреЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реИ? рдпрд╛ рдСрдЯреЛ рдореЗрдВ рдХреБрдЫ рдлреАрдЪрд░ рдЯреЙрдЧрд▓ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рдПрдХ рдЕрдЪреНрдЫрд╛ рдЕрд╡рд▓реЛрдХрди рдирд╣реАрдВ рд╣реИред

@vincentbriglia рдПрдХ рдкреНрд▓рдЧрдЗрди рд╣реЛрдЧрд╛ рдЬреЛ GitHub рдкреИрдХреЗрдЬ рдХреЗ рдХрд╛рдо рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ? рдпрд╣ npm рдкреНрд▓рдЧрдЗрди рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЧреБрд▓реНрд▓рдХ рдмрдВрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред next рдФрд░ latest рд░рд┐рд▓реАрдЬ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛, рдХреИрдирд░реА рдЙрддрдирд╛ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рд╡рд┐рдЪрд╛рд░?

@hipsstersmoothie рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдо рдЙрд╕реА рдкреИрдХреЗрдЬ рдХреЛ NPM рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдФрд░ GHPR рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдпрд╣рд╛рдБ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ GHPR, рднрд▓реЗ рд╣реА рдЗрд╕ рд░реВрдк рдореЗрдВ рд╡рд┐рдЬреНрдЮрд╛рдкрд┐рдд рд╣реЛ, рдкреНрд░реЙрдХреНрд╕реА рдкреИрдХреЗрдЬ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ npm рдФрд░ github рдкрд░ рд╕рдорд╛рди рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИред

рд╣рдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдмрдВрдж рджрд░рд╡рд╛рдЬреЛрдВ рдХреЗ рдкреАрдЫреЗ рд╡рд┐рдХрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо feature branches > next рд╕реЗ рд╣рдорд╛рд░реА рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреАрдо рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд/рдЕрдиреБрдореЛрджрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрдирд░реА рдмрд┐рд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреИрдирд░реА рдмрд┐рд▓реНрдб рдЕрднреА рднреА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИрдВред npm рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЦреЛрдирд╛ рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реЛрдЧреАред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬреАрдПрдЪрдкреАрдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕рдВрджрд░реНрдн рдЖрдо рддреМрд░ рдкрд░ рдпрд╣ рд╣реИ рдХрд┐ рдирд┐рдЬреА "рд╕рдВрдЧрдарди" рд╕рдВрджрд░реНрдн рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХ рд╕реНрдерд╛рди рд╣реИ рдФрд░ рдпрджрд┐ рдХреЛрдИ рдШрдЯрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ, рддреЛ npmjs.org рдорд╛рдзреНрдпрдорд┐рдХ рд╣реИред (рдореИрдВрдиреЗ рдХрд┐рд╕реА рдХреЛ рдЬреАрдердм рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдШрдЯрдХреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ)ред рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ npmjs рд╣реИ, рдХреЛрдИ GHPR рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рдирд┐рдЬреА рдкреИрдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдирд╣реАрдВ рд╣реИред

рдПрдХ рддрд░рдл рдзреНрдпрд╛рди рджреЗрдВ, рдЪреВрдВрдХрд┐ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ GHPR рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ: рд╣рдордиреЗ рдПрдХ рдСрдЯреЛ рдкреНрд▓рдЧрдЗрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдЕрд▓рдЧ рд░рдЦрд╛ рд╣реИ рдЬреЛ рдХреБрдЫ рдирд┐рдпрдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ (orgs рдкреИрдХреЗрдЬ рдХреЗ 50Gb рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ docker рд╢рд╛рдорд┐рд▓ рд╣реИ) рдЗрдореЗрдЬрд┐рд╕)

  • рд╕реАрдорд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рдХреИрдирд░реА рдирд┐рдХрд╛рд▓реЗрдВ
  • рд╢реНрд░реЗрдгреА рдореЗрдВ nth last next рдХреЛ рд╣рдЯрд╛ рджреЗрдВ
  • ...

v10 рдкрд░ рдХрд╛рдо рд╢реБрд░реВ рд╣реЛрдиреЗ рддрдХ рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ ghpr рдкреНрд░рдХрд╛рд╢рдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢реА рд╕реЗ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реВрдВрдЧрд╛, рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддреБрдд рд╡рд┐рдЪрд╛рд░ рдмрд╣реБрдд рд░реЛрдорд╛рдВрдЪрдХ рд▓рдЧрддреЗ рд╣реИрдВ рдФрд░ рд╢рд╛рдпрдж рдЕрдзрд┐рдХ "рднрд╡рд┐рд╖реНрдп рдХреЗ рдкреНрд░рдорд╛рдг" рд╣реИрдВред

рд╣рдо рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдФрд░ рдирд┐рдЬреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд░рд╣ рд╕рдХрддреЗ рдереЗ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИред

рдореИрдВ "рдорд╛рдзреНрдпрдорд┐рдХ рдкреИрдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА" рдкреНрд▓рдЧрдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ред рддреЛ рдПрдирдкреАрдПрдо рдкреНрд▓рдЧрдЗрди рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬреИрд╕рд╛ рдХрд┐ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рднреА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЙрд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ред рдлрд┐рд░ рдпрд╣ рдирдпрд╛ рдкреНрд▓рдЧрдЗрди рдПрдХ рджреВрд╕рд░реА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдЧрд╛ (рдЪрд╛рд╣реЗ рд╡рд╣ npm рдпрд╛ ghpr рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛) рдЬреЛ рднреА рд╕рдВрд╕реНрдХрд░рдг HEAD рдХрдорд┐рдЯ рдкрд░ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЬрд╛рд░реА рдХрд░рдирд╛ред

рдПрдХ рддрд░рдл рдзреНрдпрд╛рди рджреЗрдВ, рдЪреВрдВрдХрд┐ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ GHPR рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ: рд╣рдордиреЗ рдПрдХ рдСрдЯреЛ рдкреНрд▓рдЧрдЗрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдЕрд▓рдЧ рд░рдЦрд╛ рд╣реИ рдЬреЛ рдХреБрдЫ рдирд┐рдпрдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ (orgs рдкреИрдХреЗрдЬ рдХреЗ 50Gb рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ docker рд╢рд╛рдорд┐рд▓ рд╣реИ) рдЗрдореЗрдЬрд┐рд╕)

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рд╕реБрд╡рд┐рдзрд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рд╡реЗ рд╕реАрдорд╛рдПрдВ рдореМрдЬреВрдж рд╣реИрдВ!

рдпрд╣ рдирдпрд╛ рдкреНрд▓рдЧрдЗрди рджреВрд╕рд░реА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдЧрд╛ (рдЪрд╛рд╣реЗ рд╡рд╣ npm рд╣реЛ рдпрд╛ ghpr рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛) рдЬреЛ рднреА рд╕рдВрд╕реНрдХрд░рдг HEAD рдХрдорд┐рдЯ рдкрд░ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЬрд╛рд░реА рдХрд░рдирд╛

рдЕрдЪреНрдЫрд╛ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛! рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╣рдорд╛рд░реЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рднреА

рдирдорд╕реНрддреЗ! рдЗрд╕ рдереНрд░реЗрдб рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдСрдЯреЛ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ? рдХреНрдпрд╛ рдПрдХ рд╣реА рд░рд┐рд▓реАрдЬ рд╕реЗ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЪреАрдЬреЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рдЪреВрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдкреНрд▓рдЧрдЗрди рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╛рдЗрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ (рд╕рднреА git-tag рдХреЛ рдЫреЛрдбрд╝рдХрд░)

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рд╣реИред рдХреНрдпрд╛ docker рдкреНрд▓рдЧрдЗрди рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ? рдпрд╣ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдмреБрд░рд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдпрд╣рд╛рдВ рдПрдХ рдФрд░ рд╣реИ: рдореБрдЭреЗ рдПрд╕рдмреАрдЯреА (

рдпрд╣ рд╕реНрд╡рддрдВрддреНрд░ рдореЛрдиреЛрд░реЗрдкреЛ рдкреНрд░рдмрдВрдзрди рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ

рдпрд╣ рдЗрд╕ рдзрд╛рдЧреЗ рд╕реЗ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓рдХреНрд╖реНрдп рдХрдИ рдЙрдк-рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдореЛрдиреЛрд░реЗрдкреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╣реИ рдЬрд┐рдирдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд╢рди рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВред рдПрдХ рдПрдХрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддреА рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЙрдХрд░ рдЫрд╡рд┐ рдФрд░ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдВрдЧреНрд░рд╣ (рдХрд╣реАрдВ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ)ред рдпрд╛ рдПрдХ рдЧрд┐рдЯрд╣рдм рдХреНрд░рд┐рдпрд╛ рдЬрд┐рд╕реЗ рдПрдирдкреАрдПрдо рдХреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЧрд┐рдЯрд╣рдм рд╡рд┐рдЬреНрдЮрдкреНрддрд┐ рдкрд░ рдПрдХ рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрдорд┐рдЯ, рдЯреИрдЧ рдФрд░ рдкреБрд╢ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╢реЛрд░ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рд╢рд╛рдпрдж рдЙрди рдЧрд┐рдЯ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдХреЛрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИ? рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ package рд▓рд┐рдП _want_ рдЕрд▓рдЧ рдХрдорд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдпрд╣ рдореБрдЦреНрдп рдореБрджреНрджрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рджрд╛рд╡реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реЗ рднреНрд░рдо рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЖрджреЗрд╢ "рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд░рддрд╛ рд╣реИ"ред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ publish рд╣реБрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреЗ рд▓рд┐рдП _only publish_ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдХрдорд┐рдЯ рдмрдирд╛рдирд╛ рдпрд╛ рдЧрд┐рдЯ рдЯреИрдЧ рдХреЛ рдкреБрд╢ рдХрд░рдирд╛ред рдпрджрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд╢рди рдкреНрд▓рдЧрдЗрди рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рднрд╛рдЧреЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдФрд░/рдпрд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдСрдЯреЛ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЕрднреА рднреА рд╕рдВрднрд╡ рд╣реИ рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рдПрдирдкреАрдПрдо рдЬреИрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдкреНрд░рддрд┐ рдмрд╣реБрдд рдкрдХреНрд╖рдкрд╛рддреА рд╣реИ?

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

zephraph picture zephraph  ┬╖  10рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tunnckoCore picture tunnckoCore  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

reintroducing picture reintroducing  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

vincentbriglia picture vincentbriglia  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

hipstersmoothie picture hipstersmoothie  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ