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
Just head over to the GitHub page and click the "Fork" button. It's just that simple. Once you've done that, you can use your favorite git client to clone your repo or just head straight to the command line:
While this isn't an absolutely necessary step, if you plan on doing anything more than just a tiny quick fix, you'll want to make sure you keep your fork up to date by tracking the original "upstream" repo that you forked. To do this, you'll need to add a remote:
("meshery" is used as the example repo. Be sure to reference the _actual_ repo you're contributing to e.g. "meshery-linkerd").
16
21
17
22
## Verify the new remote named 'upstream'
18
-
```
23
+
24
+
```shell
19
25
git remote -v
20
26
```
27
+
21
28
Whenever you want to update your fork with the latest upstream changes, you'll need to first fetch the upstream repo's branches and latest commits to bring them into your repository:
22
29
23
30
## Fetch from upstream remote
24
-
```
31
+
32
+
```shell
25
33
git fetch upstream
26
34
```
27
35
28
36
## View all branches, including those from upstream
29
-
```
37
+
38
+
```shell
30
39
git branch -va
31
40
```
41
+
32
42
Now, checkout your own master branch and merge the upstream repo's master branch:
33
43
34
44
## Checkout your master branch and merge upstream
35
-
```
45
+
46
+
```shell
36
47
git checkout master
37
48
git merge upstream/master
38
49
```
50
+
39
51
If there are no unique commits on the local master branch, git will simply perform a fast-forward. However, if you have been making changes on master (in the vast majority of cases you probably shouldn't be - see the next section, you may have to deal with conflicts. When doing so, be careful to respect the changes made upstream.
40
52
41
53
Now, your local master branch is up-to-date with everything modified upstream.
@@ -46,50 +58,61 @@ Whenever you begin work on a new feature or bugfix, it's important that you crea
46
58
To create a new branch and start working on it, peform the following flow.
47
59
48
60
## Checkout the master branch - you want your new branch to come from master
49
-
```
61
+
62
+
```shell
50
63
git checkout master
51
64
```
52
65
53
66
## Create a new branch (give your branch its own simple informative name)
67
+
54
68
For enhancements use `feature/your_username/issue#` or `feature/your_username/name_of_feature`
55
69
56
70
For bugs use `bug/your_username/issue#` or `bug/your_username/name_of_bug`
57
71
58
-
```
72
+
```shell
59
73
git branch feature/jdoe/567
60
74
```
61
75
62
76
## Switch to your new branch
63
-
```
77
+
78
+
```shell
64
79
git checkout feature/jdoe/567
65
80
```
81
+
66
82
Now, go to town hacking away and making whatever changes you want to.
67
83
68
84
## Submitting your changes (a Pull Request)
85
+
69
86
Prior to submitting your pull request, you might want to do a few things to clean up your branch and make it as simple as possible for the original repo's maintainer to test, accept, and merge your work.
70
87
71
88
In the time that you've been working on your changes, if any commits have been made to the upstream master branch, you will need to rebase your development branch so that merging it will be a simple fast-forward that won't require any conflict resolution work.
72
89
73
90
## Fetch upstream master and merge with your repo's master branch
74
-
```
91
+
92
+
```shell
75
93
git fetch upstream
76
94
git checkout master
77
95
git merge upstream/master
78
96
```
79
97
80
98
## If there were any new commits, rebase your development branch
81
-
```
99
+
100
+
```shell
82
101
git checkout feature/jdoe/567
83
102
git rebase master
84
103
```
104
+
85
105
Now, it may be desirable to squash some of your smaller commits down into a small number of larger more cohesive commits. You can do this with an interactive rebase:
86
106
87
107
## Rebase all commits on your development branch
88
-
```
108
+
109
+
```shell
89
110
git checkout
90
111
git rebase -i master
91
112
```
113
+
92
114
This will open up a text editor where you can specify which commits to squash.
93
115
94
116
## Submitting
117
+
95
118
Once you've committed and pushed all of your changes to GitHub, go to the page for your fork on GitHub, select your development branch, and click the pull request button. If you need to make any adjustments to your pull request, just push the updates to GitHub. Your pull request will automatically track the changes on your development branch and update.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+19-8Lines changed: 19 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,13 @@
1
1
# <aname="contributing">Contributing Overview</a>
2
+
2
3
Please do! Thanks for your help improving the project! :balloon:
3
4
4
5
All contributors are welcome. Please see the [newcomers welcome guide](https://layer5.io/community/newcomers) for how, where and why to contribute. This project is community-built and welcomes collaboration. Contributors are expected to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md).
5
6
6
7
Not sure where to start? First, see the [newcomers welcome guide](https://layer5.io/community/newcomers). Grab an open issue with the [help-wanted label](../../labels/help%20wanted) and jump in. Join the [Slack account](http://slack.layer5.io) and engage in conversation. Create a [new issue](/../../issues/new/choose) if needed. All [pull requests](/../../pulls) should reference an open [issue](/../../issues). Include keywords in your pull request descriptions, as well as commit messages, to [automatically close issues in GitHub](https://help.github.com/en/github/managing-your-work-on-github/closing-issues-using-keywords).
- <ahref="#commit-signing">Developer Certificate of Origin</a>
11
13
@@ -15,8 +17,8 @@ Relevant coding style guidelines are the Go Code Review Comments and the Formatt
15
17
16
18
This repository serves as the **official content repository** for Layer5's Academy learning platform, hosting all official learning paths, challenges, and certifications.
17
19
18
-
19
20
### Detailed Guide
21
+
20
22
For a complete, step-by-step guide on how to create, structure, and publish a new learning path, please refer to our official documentation:
Please contribute! Exoscale Academy uses Hugo and GitHub Pages to host the learning platform. Learn more about [Layer5's Academy platform development](https://docs.layer5.io/cloud/academy/platform-development/). The process of contributing follows this flow:
65
71
66
72
1. Create a fork, if you have not already, by following the steps described [here](./CONTRIBUTING-gitflow.md)
@@ -76,12 +82,13 @@ Please contribute! Exoscale Academy uses Hugo and GitHub Pages to host the learn
76
82
`git push origin <my-changes>`
77
83
1. Open a pull request (in your web browser) against the repo.
78
84
79
-
80
85
#### Tests
86
+
81
87
Users can now test their local development setup using the provided Makefile commands.
82
88
83
89
To test your local Academy setup, run the following commands:
84
-
```
90
+
91
+
```shell
85
92
# Install dependencies
86
93
make setup
87
94
@@ -90,7 +97,9 @@ make site
90
97
```
91
98
92
99
#### Building the Site
100
+
93
101
To build the Academy site for production, ensure you have `Hugo` and `Go` installed. Now, run the following command to build the site:
102
+
94
103
```sh
95
104
make build
96
105
```
@@ -100,10 +109,12 @@ make build
100
109
Exoscale Academy follows specific content and formatting guidelines for consistency across all learning materials.
101
110
102
111
# <aname="maintaining"> Reviews</a>
112
+
103
113
All contributors are invited to review pull requests. See this short video on [how to review a pull request](https://www.youtube.com/watch?v=isLfo7jfE6g&feature=youtu.be).
104
114
105
115
# New to Git?
106
-
Resources: https://lab.github.com and https://try.github.com/
116
+
117
+
Resources: <https://lab.github.com> and <https://try.github.com/>
107
118
108
119
### License
109
120
@@ -115,4 +126,4 @@ This repository and site are available as open source under the terms of the [Ap
115
126
<p>The <ahref="https://layer5.io/community">Layer5 community</a> represents the largest collection of service mesh projects and their maintainers in the world.</p>
116
127
117
128
**Open Source First**
118
-
<p>At Layer5, we champion developer-defined infrastructure, giving engineers the power to reshape application delivery. We empower operators in reimagining how they manage modern infrastructure: collaboratively.</p>
129
+
<p>At Layer5, we champion developer-defined infrastructure, giving engineers the power to reshape application delivery. We empower operators in reimagining how they manage modern infrastructure: collaboratively.</p>
Copy file name to clipboardExpand all lines: README.md
+30-17Lines changed: 30 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# Exoscale Academy
1
+
# Exoscale Academy
2
2
3
3
Welcome to **Exoscale Academy**, the dedicated cloud education and training platform powered by Layer5. This repository provides a comprehensive framework for creating, organizing, and publishing structured learning paths, challenges and certifications tailored for Exoscale users and cloud practitioners.
4
4
@@ -10,9 +10,10 @@ To help you create professional and visually consistent content, this academy pr
10
10
11
11
### How to Use the Icons
12
12
13
-
1.**Import the Model:** Navigate to your **[Registry Settings in Meshery](https://kanvas.new/settings?settingsCategory=Registry&tab=Models)**.
14
-
2. Select "Import from URL".
15
-
3. Paste the following URL to import the icon set:
13
+
1.**Import the Model:** Navigate to your **[Registry Settings in Meshery](https://kanvas.new/settings?settingsCategory=Registry&tab=Models)**.
14
+
2. Select "Import from URL".
15
+
3. Paste the following URL to import the icon set:
@@ -158,6 +171,7 @@ Embed videos in a visually distinct `card` using:
158
171
</video>
159
172
{{</* /card */>}}
160
173
```
174
+
161
175
## How to Add a Meshery Design
162
176
163
177
1. Place Design Assets
@@ -173,8 +187,8 @@ Embed videos in a visually distinct `card` using:
173
187
>}}
174
188
```
175
189
176
-
- Replace `id` with the unique identifier for your design.
177
-
- Replace `src` with the path to your JS asset responsible for rendering.
190
+
- Replace `id` with the unique identifier for your design.
191
+
- Replace `src` with the path to your JS asset responsible for rendering.
178
192
179
193
> Always use these shortcodes for images, videos, and embedded designs. This keeps assets portable, ensures they resolve correctly for each organization, and integrates properly with the Academy platform’s build and deployment flow.
180
194
@@ -215,4 +229,3 @@ For questions or help, open a [GitHub Issue](https://github.com/layer5io/exoscal
0 commit comments