Skip to content

Commit a2fbd80

Browse files
authored
Merge pull request #730 from webpack/dev-guide
Add a stub for development guides
2 parents e8a8e20 + 86b49a9 commit a2fbd80

File tree

4 files changed

+83
-1
lines changed

4 files changed

+83
-1
lines changed

antwar.config.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,17 @@ module.exports = {
7171
}
7272
),
7373

74+
development: section(
75+
'Development',
76+
function() {
77+
return require.context(
78+
'json-loader!yaml-frontmatter-loader!./content/development',
79+
true,
80+
/^\.\/.*\.md$/
81+
);
82+
}
83+
),
84+
7485
configuration: section(
7586
'Configuration',
7687
function() {

content/contribute.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ title: Contribute
1010

1111
## Technical Contribution
1212

13-
13+
[Development guide](/development)
1414

1515
## Donation
1616

17+
[Open Collective](https://opencollective.com/webpack)

content/development/index.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
title: Development
3+
---
4+
5+
These guides cover what you need to know in order to develop webpack. WIP!
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
title: Webpack merge, tag and release process
3+
contributors:
4+
- d3viant0ne
5+
---
6+
7+
webpack uses standard Automatic versioning and CHANGELOG management, using GitHub's new squash button and
8+
the [recommended workflow](https://github.com/conventional-changelog/conventional-changelog-cli#recommended-workflow) for `conventional-changelog`.
9+
10+
## Pull requests into `master`
11+
12+
1. When you land commits on your `master` branch, select the _Squash and Merge_ option.
13+
2. Add a title and body that follows the [conventional-changelog-standard conventions](https://github.com/bcoe/conventional-changelog-standard/blob/master/convention.md).
14+
3. Land It!
15+
16+
## Cut a standard release
17+
18+
```sh
19+
# npm run script
20+
npm run release
21+
# or global bin
22+
standard-version
23+
```
24+
25+
_This will increment the package version based on commit history from the last tag, update the changelog accordingly, commits the changes & cuts a **local tag**_
26+
27+
### When satisfied with the local tag, push it up to master.
28+
29+
```sh
30+
# commandline
31+
git push --follow-tags origin master
32+
```
33+
34+
## Cut a pre-release
35+
36+
Use the flag `--prerelease` to generate pre-releases:
37+
38+
_Example: Given the last version of the package is `1.0.0`, and your code to be committed has `semver: patch` level changes..._
39+
40+
```bash
41+
# npm run script ( name === alpha, beta, rc )
42+
npm run release -- --prerelease <name>
43+
```
44+
45+
_this will tag the version `1.0.1-alpha.0`_
46+
47+
## Cut a target release version imperatively like `npm version`
48+
49+
To forgo the automated version bump use `--release-as` with the argument `major`, `minor` or `patch`:
50+
51+
Suppose the last version of your code is `1.0.0`, you've only landed `fix:` commits, but
52+
you would like your next release to be a `minor`. Simply do:
53+
54+
```bash
55+
# npm run script
56+
npm run release -- --release-as minor
57+
```
58+
59+
_you will get version `1.1.0` rather than the auto generated version `1.0.1`._
60+
61+
> **NOTE:** you can combine `--release-as` and `--prerelease` to generate a release. This is useful when publishing experimental feature(s).
62+
63+
## Signing commits and tags
64+
65+
If you have your GPG key set up, add the `--sign` or `-s` flag to your `standard-version` command.

0 commit comments

Comments
 (0)