You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+28-11Lines changed: 28 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -20,49 +20,66 @@ To contribute to the `integrations/makeswift` branch, you can create a new branc
20
20
21
21
### Pulling updates from `canary` into `integrations/makeswift`
22
22
23
-
We aim to keep `integrations/makeswift` in sync with `canary`. To do this, we frequently pull the latest code from `canary` into `integrations/makeswift`.
23
+
We aim to keep `integrations/makeswift` in sync with `canary`. To do this, we pull the latest code from `canary` into `integrations/makeswift` right after we cut a new release for `canary`.
24
24
25
25
To pull the latest code from `canary` into `integrations/makeswift`, you can follow these steps:
26
26
27
-
1. Fetch the latest code from `canary`:
27
+
1. Check [open Pull Requests](https://github.com/bigcommerce/catalyst/pulls?q=is%3Apr+is%3Aopen) for any PR's titled `Version Packages (main)` ([example](https://github.com/bigcommerce/catalyst/pull/1892))
28
+
a. If you find one, it should be approved and merged before continuing
29
+
b. If you do not find one, it most likely indicates that `canary` and `integrations/makeswift` are already in sync, and there are no updates to pull into `integrations/makeswift` from `canary`.
30
+
31
+
> [!TIP]
32
+
> The remaining steps assume you are working locally after having cloned `bigcommerce/catalyst`, and that you have rights to push to the `integrations/makeswift` branch on GitHub.
33
+
34
+
2. Fetch the latest code from `canary`:
28
35
29
36
```bash
30
37
git checkout canary
31
38
git pull
32
39
```
33
40
34
-
2. Fetch the latest code from `integrations/makeswift`:
41
+
3. Fetch the latest code from `integrations/makeswift`:
35
42
36
43
```bash
37
44
git checkout integrations/makeswift
38
45
git pull
39
46
```
40
47
41
-
3. Checkout a new branch from `integrations/makeswift`:
48
+
4. Checkout a new branch from `integrations/makeswift`:
42
49
43
50
```bash
44
51
git checkout -b {new-branch-name}
45
52
```
46
53
47
-
4. Merge `canary` into the new branch:
54
+
5. Merge `canary` into the new branch:
48
55
49
56
```bash
50
57
git merge canary
51
58
```
52
59
53
-
5. After resolving any merge conflicts, open a new PR in GitHub to merge your new branch into `integrations/makeswift`. This PR should be code reviewed and approved before the next steps.
60
+
6. Resolve merge conflicts, if necessary.
61
+
62
+
> [!WARNING]
63
+
> Ensure that the merge does not inadvertently overwrite the `integrations/makeswift` version of `core/CHANGELOG.md`, or the `name` and `version` fields in `core/package.json`. The `name` field should remain `@bigcommerce/catalyst-makeswift`, the `version` field should remain whatever the latest published `@bigcommerce/catalyst-makeswift` version was, and the `core/CHANGELOG.md` should not include any changelog entries from the `canary` version of `core/CHANGELOG.md`
64
+
65
+
7. Create a new `.changeset/*.md` file on `integrations/makeswift` by running `pnpm changeset`. The version bump you choose (e.g., `major`, `minor`, or `patch`) should match the version bumped by the original `Version Packages (main)` PR from Step 1 above. For the Changeset description, simply link to the `core/CHANGELOG.md` entry on `canary` that was created by the `Version Packages (main)` PR from Step 1 above. Create another commit containing the Changeset file.
66
+
67
+
8. Open a new PR in GitHub to merge your new branch into `integrations/makeswift`. This PR should be code reviewed and approved before the next steps.
54
68
55
-
6. Rebase the changes onto the local `integrations/makeswift` branch in order to make the branches 1-1 and keep a linear commit history.
69
+
9. Rebase the changes onto the local `integrations/makeswift` branch in order to make the branches 1-1 and keep a linear commit history.
56
70
57
71
```bash
58
72
git checkout integrations/makeswift
59
73
git rebase {new-branch-name}
60
74
```
61
75
62
-
7. Push the changes up to GitHub, which will automatically close the open PR from step 6.
63
-
```bash
64
-
git push
65
-
```
76
+
10. Push the changes up to GitHub, which will automatically close the open PR from step 6.
77
+
78
+
```bash
79
+
git push
80
+
```
81
+
82
+
11. This should create or update a PR titled `Version Packages (integrations/makeswift)`. Approving and merging this PR will create a new GitHub release for`@bigcommerce/catalyst-makeswift` based on the version bump you chosein Step 7 above.
0 commit comments