Είναι πάντα δύσκολο να κάνεις κάτι για πρώτη φορά. Ειδικά όταν συνεργάζεσαι με άλλους και κάνεις λάθη, η κατάσταση γίνεται ιδιαίτερα άβολη. Αλλά το σημαντικότερο στο ανοιχτό λογισμικό είναι η συνεργασία και το να δουλεύουμε μαζί. Θέλαμε να απλοποιήσουμε τον τρόπο με τον οποίο οι άνθρωποι που για πρώτη φορά συνεισφέρουν στο ανοιχτό λογισμικό, μαθαίνουν και κάνουν πράγματα.
Μπορείτε να βοηθηθείτε διαβάζοντας άρθρα και βλέποντας ενημερωτικά βίντεο, αλλά τίποτα δε συγκρίνεται με το να δουλεύετε σε ένα πραγματικό project. Αυτό το έργο έχει στόχο να κατευθύνει και να απλοποιήσει τον τρόπο με τον οποίο οι σχετικά άπειροι συνεισφέρουν για πρώτη φορά σε κώδικα ανοιχτού λογισμικού. Σκεφτείτε ότι όσο πιο χαλαροί είστε τόσο πιο εύκολα μαθαίνετε. Εάν προσπαθείτε να κάνετε την πρώτη σας συνεισφορά σε κώδικα, ακολουθήστε τα επόμενα απλά βήματα.
Εάν δεν έχετε εγκατεστημένο το git στον υπολογιστή σας, εγκαταστήστε το
Αντιγράψτε το αποθετήριο πατώντας το κουμπί με τίτλο Fork
στην κορυφή αυτής της σελίδας. Με αυτό τον τρόπο ένα ακριβές αντίγραφο του αποθετηρίου θα δημιουργηθεί στο λογαριασμό σας.
Τώρα αντιγράψτε το αποθετήριο στον υπολογιστή σας. Κάντε κλικ στο κουμπί Clone or download
και μετά στο εικονίδιο δεξιά από το σύνδεσμο για αντιγραφή στο πρόχειρο.
Ανοίξτε ένα τερματικό και τρέξτε την ακόλουθη git εντολή:
git clone "σύνδεσμος που μόλις αντιγράψατε"
Όπου "σύνδεσμος που μόλις αντιγράψατε" (χωρίς τα εισαγωγικά) είναι ο σύνδεσμος για αυτό το αποθετήριο. Δείτε τα προηγούμενα βήματα για να βρείτε αυτόν τον σύνδεσμο.
Για παράδειγμα:
git clone https://github.com/this-is-you/first-contributions.git
Όπου 'this-is-you' είναι το όνομα χρήστη σας στο github. Εδώ αντιγράφετε τα περιεχόμενα του αποθετηρίου first-contributions
απο το github στον υπολογιστή σας.
Πηγαίνετε στο φάκελο του αποθετηρίου στον υπολογιστή σας εάν δεν είστε ήδη εκεί.
cd first-contributions
Τώρα δημιουργείστε ένα νέο παρακλάδι χρησιμοποιώντας την εντολή git switch
:
git switch -c your-new-branch-name
Για παράδειγμα:
git switch -c add-alonzo-church
(Το όνομα του παρακλαδιού δεν χρειάζεται να περιέχει την λέξη add αλλά είναι λογικό να την συμπεριλάβουμε μιας και ο σκοπός του παρακλαδιού είναι να προσθέσουμε το όνομα μας σε μια λίστα.)
Τώρα ανοίξτε το αρχείο Contributors.md
με έναν επεξεργαστή κειμένου. Χρειάζεται να είστε εξοικειωμένοι με την Markdown, μια ελαφριά γλώσσα σήμανσης. Δείτε στο cheat sheet για το πως να χρησιμοποιήσετε την Markdown.
Σε αυτήν την περίπτωση προσθέστε την παρακάτω σειρά στο τέλος του αρχείου Contributors.md:
- [Το-όνομα-σας](https://github.com/Your-username)
Για παράδειγμα:
- [John Doe](https://github.com/johndoe)
Σιγουρευτείτε ότι δεν υπάρχει κενό ανάμεσα στα ](
. Αποθηκεύστε το αρχείο και κλείστε το.
Εάν πάτε στο φάκελο του αποθετηρίου και γράψετε την εντολή git status
, θα δείτε ότι υπάρχουν κάποιες αλλαγές. Προσθέστε αυτές τις αλλαγές χρησιμοποιώντας την εντολή git add
.
git add Contributors.md
Τώρα σώστε αυτές τις αλλαγές χρησιμοποιώντας την παρακάτω git commit
εντολή.
git commit -m "Add <your-name> to Contributors list"
όπου <your-name>
αντικαταστήστε με το όνομα σας
Αποθηκεύστε τις αλλαγές σας χρησιμοποιώντας την εντολή git push
git push origin <add-your-name>
όπου <add-your-name>
αντικαταστήστε με το όνομα του παρακλαδιού(branch) που δημιουργήσατε προηγουμένως
Εάν πάτε στο αποθετήριο (repository) στο github θα δείτε ένα κουμπί με τίτλο Compare & pull request
. Κάντε κλικ σε αυτό το κουμπί.
Τώρα υποβάλλετε το pull request.
Σύντομα θα ενσωματώσω όλες τις αλλαγές σας στο master branch του προγράμματος. Θα ειδοποιηθείτε με email όταν οι αλλαγές που κάνατε ενσωματωθούν.
Γιορτάστε και μοιραστείτε την συνεισφορά σας με τους φίλους και τους ακόλουθους σας πηγαίνοντας στο web app.
Μπορείτε να συμμετέχετε στην ομάδα μας στο slack σε περίπτωση που θέλετε κάποια βοήθεια ή έχετε κάποια ερώτηση. Η ομάδα μας στο slack.
Τώρα μπορείτε να ξεκινήσετε να συνεισφέρετε και σε άλλα project. Έχουμε φτιάξει μια λίστα από project με εύκολα προβλήματα για να ξεκινήσετε. Δείτε εδώ τη λίστα με τα project.
GitHub Desktop | Visual Studio 2017 | GitKraken | Visual Studio Code | Atlassian Sourcetree | IntelliJ IDEA |