Create 1.0.0/index.html.haml

The beginning of translation
This commit is contained in:
Michele Castoldi 2017-06-24 23:21:07 +02:00 committed by GitHub
parent e82086e32d
commit e4d0832e6b

View File

@ -0,0 +1,302 @@
---
description: Keep a Changelog
title: Keep a Changelog
language: it-IT
version: 1.0.0
---
- changelog = "https://github.com/olivierlacan/keep-a-changelog/blob/master/CHANGELOG.md"
- gemnasium = "https://gemnasium.com/"
- gh = "https://github.com/olivierlacan/keep-a-changelog"
- issues = "https://github.com/olivierlacan/keep-a-changelog/issues"
- semver = "http://semver.org/"
- shields = "http://shields.io/"
- thechangelog = "http://5by5.tv/changelog/127"
- vandamme = "https://github.com/tech-angels/vandamme/"
- iso = "http://www.iso.org/iso/home/standards/iso8601.htm"
- ghr = "https://help.github.com/articles/creating-releases/"
.header
.title
%h1 Tenere un Changelog
%h2 Non lasciare che i tuoi amici facciano copia incolla dei git logs nei changelogs.
= link_to changelog do
Versione
%strong= current_page.metadata[:page][:version]
%pre.changelog= File.read("CHANGELOG.md")
.answers
%h3#what
%a.anchor{ href: "#what", aria_hidden: "true" }
Cos'è un changelog?
%p
Un change log è un file che contiene una lista curata e ordinata cronologicamente
delle modifiche degne di nota per ogni versione di un progetto.
%h3#why
%a.anchor{ href: "#why", aria_hidden: "true" }
Perché tenere un changelog?
%p
Per rendere facile agli utilizzatori e contribuenti vedere con precisione quali modifiche
importanti sono state fatte tra ogni release (o versione) del progetto.
%h3#who
%a.anchor{ href: "#who", aria_hidden: "true" }
Chi ha bisogno di un changelog?
%p
Le persone ne hanno bisogno. Che si tratti di consumatori o di sviluppatori, gli utenti finali
del software sono persone interessate di ciò che è nel software.
Se il software è cambiato, allora le persone vogliono sapere perché e come.
.good-practices
%h3#how
%a.anchor{ href: "#how", aria_hidden: "true" }
Come posso fare un buon changelog?
%h4#principles
%a.anchor{ href: "#principles", aria_hidden: "true" }
Linee guida
%ul
%li
Changelogs sono <em>per le persone</em>, non per le macchine.
%li
Dovrebbe essere una voce per ogni singola versione.
%li
Gli stessi tipi di modifiche dovrebbero essere raggruppati.
%li
Versioni e sezioni dovrebbero essere collegabili.
%li
L'ultima versione viene prima.
%li
Viene mostrata la data di release di ogni versione.
%li
Si dichiara se il progetto segue il #{link_to "Versionamento Semantico", semver}.
%a.anchor{ href: "#types", aria_hidden: "true" }
%h4#types Tipologie di cambiamenti
%ul
%li
%code Added
per le nuove funzionalità.
%li
%code Changed
per le modifiche a funzionalità esistenti.
%li
%code Deprecated
per le funzionalità che saranno rimosse nelle release future.
%li
%code Removed
per funzionalità deprecate rimosse in questa release.
%li
%code Fixed
per tutti i bug fix.
%li
%code Security
per invitare gli utilizzatori ad aggiornare in caso di vulnerabilità.
.effort
%h3#effort
%a.anchor{ href: "#effort", aria_hidden: "true" }
How can I reduce the effort required to maintain a changelog?
%p
Keep an <code>Unreleased</code> section at the top to track upcoming
changes.
%p This serves two purposes:
%ul
%li
People can see what changes they might expect in upcoming releases
%li
At release time, you can move the <code>Unreleased</code> section
changes into a new release version section.
.bad-practices
%h3#bad-practices
%a.anchor{ href: "#bad-practices", aria_hidden: "true" }
Can changelogs be bad?
%p Yes. Here are a few ways they can be less than useful.
%h4#log-diffs
%a.anchor{ href: "#log-diffs", aria_hidden: "true" }
Commit log diffs
%p
Using commit log diffs as changelogs is a bad idea: they're full of
noise. Things like merge commits, commits with obscure titles,
documentation changes, etc.
%p
The purpose of a commit is to document a step in the evolution of
the source code. Some projects clean up commits, some don't.
%p
The purpose of a changelog entry is to document the noteworthy
difference, often across multiple commits, to communicate them
clearly to end users.
%h4#ignoring-deprecations
%a.anchor{ href: "#ignoring-deprecations", aria_hidden: "true" }
Ignoring Deprecations
%p
When people upgrade from one version to another, it should be
painfully clear when something will break. It should be possible to
upgrade to a version that lists deprecations, remove what's
deprecated, then upgrade to the version where the deprecations
become removals.
%p
If you do nothing else, list deprecations, removals, and any
breaking changes in your changelog.
%h4#confusing-dates
%a.anchor{ href: "#confusing-dates", aria_hidden: "true" }
Confusing Dates
%p
In the U.S., people put the month first (<code>06-02-2012</code> for
June 2nd, 2012), while many people in the rest of the world write a
robotic-looking <code>2 June 2012</code>, yet pronounce it
differently. <code>2012-06-02</code> works logically from largest to
smallest, doesn't overlap in ambiguous ways with other date formats,
and is an #{link_to "ISO standard", iso}. Thus, it is the
recommended date format for changelogs.
%aside
Theres more. Help me collect these antipatterns by
= link_to "opening an issue", issues
or a pull request.
.frequently-asked-questions
%h3#frequently-asked-questions
%a.anchor{ href: "#frequently-asked-questions", aria_hidden: "true" }
Frequently Asked Questions
%h4#standard
%a.anchor{ href: "#standard", aria_hidden: "true" }
Is there a standard changelog format?
%p
Not really. There's the GNU changelog style guide, or the two-
paragraph-long GNU NEWS file "guideline". Both are inadequate or
insufficient.
%p
This project aims to be
= link_to "a better changelog convention.", changelog
It comes from observing good practices in the open source
community and gathering them.
%p
Healthy criticism, discussion and suggestions for improvements
= link_to "are welcome.", issues
%h4#filename
%a.anchor{ href: "#filename", aria_hidden: "true" }
What should the changelog file be named?
%p
Call it <code>CHANGELOG.md</code>. Some projects use
<code>HISTORY</code>, <code>NEWS</code> or <code>RELEASES</code>.
%p
While it's easy to think that the name of your changelog file
doesn't matter that much, why make it harder for your end users to
consistently find notable changes?
%h4#github-releases
%a.anchor{ href: "#github-releases", aria_hidden: "true" }
What about GitHub Releases?
%p
It's a great initiative. #{link_to "Releases", ghr} can be used to
turn simple git tags (for example a tag named <code>v1.0.0</code>)
into rich release notes by manually adding release notes or it can
pull annotated git tag messages and turn them into notes.
%p
GitHub Releases create a non-portable changelog that can only be
displayed to users within the context of GitHub. It's possible to
make them look very much like the Keep a Changelog format, but it
tends to be a bit more involved.
%p
The current version of GitHub releases is also arguably not very
discoverable by end-users, unlike the typical uppercase files
(<code>README</code>, <code>CONTRIBUTING</code>, etc.). Another
minor issue is that the interface doesn't currently offer links to
commit logs between each release.
%h4#automatic
%a.anchor{ href: "#automatic", aria_hidden: "true" }
Can changelogs be automatically parsed?
%p
Its difficult, because people follow wildly different formats and
file names.
%p
#{link_to "Vandamme", vandamme} is a Ruby gem created by the
#{link_to "Gemnasium", gemnasium} team and which parses many (but
not all) open source project changelogs.
%h4#yanked
%a.anchor{ href: "#yanked", aria_hidden: "true" }
What about yanked releases?
%p
Yanked releases are versions that had to be pulled because of a
serious bug or security issue. Often these versions don't even
appear in change logs. They should. This is how you should display
them:
%p <code>## 0.0.5 - 2014-12-13 [YANKED]</code>
%p
The <code>[YANKED]</code> tag is loud for a reason. It's important
for people to notice it. Since it's surrounded by brackets it's also
easier to parse programmatically.
%h4#rewrite
%a.anchor{ href: "#rewrite", aria_hidden: "true" }
Should you ever rewrite a changelog?
%p
Sure. There are always good reasons to improve a changelog. I
regularly open pull requests to add missing releases to open source
projects with unmaintained changelogs.
%p
It's also possible you may discover that you forgot to address a
breaking change in the notes for a version. It's obviously important
for you to update your changelog in this case.
%h4#contribute
%a.anchor{ href: "#contribute", aria_hidden: "true" }
How can I contribute?
%p
This document is not the <strong>truth</strong>; its my carefully
considered opinion, along with information and examples I gathered.
%p
This is because I want our community to reach a consensus. I believe
the discussion is as important as the end result.
%p
So please <strong>#{link_to "pitch in", gh}</strong>.
.press
%h3 Conversations
%p
I went on #{link_to "The Changelog podcast", thechangelog}
to talk about why maintainers and contributors should care about changelogs,
and also about the motivations behind this project.
Contact GitHub API Training Shop Blog About
© 2017 GitHub, Inc. Terms Privacy Security Status Help