aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
author冯昶 <seaker@qq.com>2020-08-11 10:56:34 +0800
committer冯昶 <seaker@qq.com>2020-08-11 10:56:34 +0800
commitde5ffe281ce5adc625d29b88ff4dfddcef4b2763 (patch)
treeac27cfcbce11380653774b284af8d853dee434e4 /README.md
parent435e1df337412ba819adb78930d12e7298f17277 (diff)
parentbd9eb24a17a7ed68df7e390960424e86c6a5b55d (diff)
downloadperlweeklychallenge-club-de5ffe281ce5adc625d29b88ff4dfddcef4b2763.tar.gz
perlweeklychallenge-club-de5ffe281ce5adc625d29b88ff4dfddcef4b2763.tar.bz2
perlweeklychallenge-club-de5ffe281ce5adc625d29b88ff4dfddcef4b2763.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'README.md')
-rw-r--r--README.md134
1 files changed, 81 insertions, 53 deletions
diff --git a/README.md b/README.md
index ab6e064cf3..1f43fd4ff4 100644
--- a/README.md
+++ b/README.md
@@ -1,61 +1,89 @@
# Perl Weekly Challenge Club
-This is the central repository for the members of **Perl Weekly Challenge**. The members can submit the solution to the challenge each week under version control.
+This is the central repository for the members of [**Perl Weekly Challenge**](https://perlweeklychallenge.org). The members can submit the solution to the challenge each week in their favourite programming languages, although the preferred languages are **Perl** and **Raku**.
+
+## EZPWC - Easy Perl Weekly Challenges Script
+
+**Saif Ahmed**, respected member of **Team PWC**, created the tool **[EZPWC](https://github.com/saiftynet/EZPWC)** to help you with contributing to the weekly challenge. We highly recommend you to give it a try. If you have any questions/suggestions, then please raise an issue against the tool.
## How to contribute?
Just submit Pull Request with your solutions.
-First find out the latest challenge folder, more likely the highest numbered folder is the latest challenge folder e.g. challenge-002. If you are an existing member, you would probably find a folder by your name. For example, if your name is "Joe Blog" then there would be a folder called "joe-blog". Under your named folder, you would find a file **README**. Depending on your choice of language, you should create a folder here e.g. **perl5** for Perl 5 and **perl6** for Perl 6. Inside each of these folders you can save your solutions. If it is perl5 script for challenge 1 then call it **ch-1.pl**. Similarly if it is perl5 script for challenge 2 then call it **ch-2.pl**. For perl6 solutions, call it **ch-1.p6** and **ch-2.p6** respectively. And if you are writing one-liner then call it **ch-1.sh** or **ch-2.sh**. If you are contributing for the first time, please create your named folder as described above. Also let us know what name you would like us to use?
+First find out the latest challenge folder, more likely the highest numbered folder is the latest challenge folder e.g. challenge-002. If you are an existing member, you would probably find a folder by your name. For example, if your name is **"Joe Blog"** then there would be a folder called **"joe-blog"**. Under your named folder, you would find a file **README**. Depending on your choice of language, you should create a folder here e.g. **perl** for **Perl** and **raku** for **Raku**. Inside each of these folders you can save your solutions. If it is perl script for **Task #1** then call it **ch-1.pl**. Similarly if it is perl script for **Task #2** then call it **ch-2.pl**. For **Raku** solutions, call it **ch-1.p6** and **ch-2.p6** respectively. And if you are writing one-liner then call it **ch-1.sh** or **ch-2.sh**. If you are contributing for the first time, please create your named folder as described above. Also let us know what name you would like us to use?
-In case you have created a blog about your solutions, then create a file called **blog.txt** and add the link to it.
+In case you have created a blog about your solutions, then create a file called **blog.txt** and add the link to it. In case you have more than one blog then create another file called **blog1.txt** and add your link there.
## Step-by-step instructions
-Let us assume you want to subtmit solutions for **Challenge 002** and your Github user name is **joe-blog**.
+Let us assume you want to submit solutions for **Challenge 002** and your Github user name is **joe-blog**.
-1. If you are submitting the solution for the first time then you have to **Fork** the repository by clicking the "Fork" button in the top right corner and should have repository e.g. **https://github.com/joe-blog/perlweeklychallenge-club**.
-
-2. Go to your favourite terminal and **clone** your repository. e.g **git clone https://github.com/joe-blog/perlweeklychallenge-club**.
+1. If you are submitting the solution for the first time then you have to **Fork** the repository **https://github.com/manwar/perlweeklychallenge-club** by clicking the **"Fork"** button in the top right corner and should have repository e.g. **https://github.com/joe-blog/perlweeklychallenge-club**.
-3. Create a new branch for the solution **git checkout -b new-branch**.
+2. Go to your favourite terminal and **clone** your repository.
+ ```
+ $ git clone https://github.com/joe-blog/perlweeklychallenge-club
+ ```
-3. Go to the **Challenge 002** folder **cd perlweeklychallenge-club/challenge-002**.
+3. Create a new branch for the solution
+ ```
+ $ git checkout -b new-branch
+ ```
-4. If you find a folder with your name in the current folder then skip to next step otherwise create a new folder **mkdir joe-blog**.
+3. Go to the **Challenge 002** folder.
+ ```
+ $ cd perlweeklychallenge-club/challenge-002
+ ```
-5. Change into your named folder **cd joe-blog**.
+4. If you find a folder with your name in the current folder then skip to next step otherwise create a new folder.
+ ```
+ $ mkdir joe-blog
+ ```
+
+5. Change into your named folder.
+ ```
+ $ cd joe-blog
+ ```
6. If you just created the folder then you should add a file **README** and add a line **Solution by Joe Blog** otherwise skip to next step.
-7. If you want to submit **Perl 5** solutions then you should create a folder **perl5** (if not already created). Similarly if you want to submit **Perl 6** solutions then you should create a folder **perl6** (if not already created).
+7. If you want to submit **Perl 5** solutions then you should create a folder **perl** (if not already created). Similarly if you want to submit **Raku** solutions then you should create a folder **raku** (if not already created).
-8. Change into your relevant folder depending on your choice **cd perl5** or **cd perl6**.
+8. Change into your relevant folder depending on your choice **cd perl** or **cd raku**.
9. Now you are ready to add your solutions. If it is for the first challenge then create a file named **ch-1.pl** or **ch-1.p6** or **ch-1.sh**. Similarly, if it is for the second challenge then create a file named **ch-2.pl** or **ch-2.p6** or **ch-2.sh**.
-10. Once you are happy with your solutions, you should **add** it to the repository. First go back to **root** of the repository and then fire the command **git add challenge-002/joe-blog**.
+10. Once you are happy with your solutions, you should **add** it to the repository. First go back to **root** of the repository and then fire the command
+ ```
+ $ git add challenge-002/joe-blog
+ ```
-11. Commit your changes **git commit**
+11. Commit your changes.
+ ```
+ $ git commit
+ ```
-12. Push your changes **git push -u origin new-branch**
+12. Push your changes.
+ ```
+ $ git push -u origin new-branch
+ ```
13. Now go to your fork repository in GitHub web portal **https://github.com/joe-blog/perlweeklychallenge-club**
14. You should see a button to submit **Pull Request**.
-## How to add new solution when you already have a fork?
+## How to add new solution when you already have the forked repository?
-Let us assume you already have a fork. If this is the first time you are using the same fork for submitting subsequent challenges solution. I also assume your GitHub user name is **joe-blog**.
+Let us assume you already have the repository forked. If this is the first time you are using the same forked repository for submitting subsequent challenges solution. I also assume your GitHub user name is **joe-blog**.
1. Checkout out the **master** branch first.
```
$ git checkout master
```
-
+
2. Check if you have setup **upstream**.
```
$ git remote -v
```
-
+
You should see something similar:
```
origin https://github.com/joe-blog/perlweeklychallenge-club (fetch)
@@ -63,88 +91,88 @@ Let us assume you already have a fork. If this is the first time you are using t
upstream https://github.com/manwar/perlweeklychallenge-club (fetch)
upstream https://github.com/manwar/perlweeklychallenge-club (push)
```
-
+
If you don't see **upstream** as above then you need to setup your **upstream** like below:
-
+
```
$ git remote add upstream https://github.com/manwar/perlweeklychallenge-club
```
-
+
Check if you have everything setup correctly.
-
+
```
$ git remote -v
```
-
+
If you see similar output as above then you have setup **upstream** correctly.
You only need to do it **once**.
-
+
3. Now we need to **fetch** latest changes from the **upstream**.
```
$ git fetch upstream
```
-
+
4. We will now merge the changes into your local **master** branch.
```
$ git merge upstream/master --ff-only
```
-
+
5. Then push your **master** changes back to the repository.
```
$ git push -u origin master
```
-
+
6. Now it is time create new branch for new challenge
```
$ git checkout -b branch-for-challenge-005
```
-
+
7. Once you have a new **branch** ready, you can start adding your solutions or blog information.
-
+
```
$ cd challenge-005/joe-blog
-
+
$ echo "URL to the blog" > blog.txt
-
- $ mkdir perl5
-
- $ cd perl5
-
+
+ $ mkdir perl
+
+ $ cd perl
+
Add script like ch-1.pl or ch-2.pl or ch-1.sh or ch-2.sh
-
- $ mkdir perl6
-
- $ cd perl6
-
+
+ $ mkdir raku
+
+ $ cd raku
+
Add script like ch-1.p6 or ch-2.p6 or ch-1.sh or ch-2.sh
```
-
+
Test your script now.
-
+
8. Commit your changes.
```
$ git add challenge-005/joe-blog
-
+
$ git commit
```
-
-9. Now push the newly created branh **branch-for-challenge-005**
+
+9. Now push the newly created branch **branch-for-challenge-005**
```
$ git push -u origin branch-for-challenge-005
```
-
+
10. Time to submit your changes as **Pull Request**.
Go to GitHub web profile
-
+
https://github.com/joe-blog/perlweeklychallenge-club
-
- You should button to create **Pull Request**.
-
-If you have any trouble with the above instructions then please get in touch with me anytime (mohammad.anwar@yahoo.com).
+
+ You should see button to create **Pull Request**.
+
+If you have any trouble with the above instructions then please get in touch with me anytime <mohammad.anwar@yahoo.com>.