Review Board » History » Version 2
Αλέξανδρος Διαμαντίδης, 27/01/2014 13:20
1 | 1 | Αλέξανδρος Διαμαντίδης | h1. Review Board |
---|---|---|---|
2 | |||
3 | Για το review σημαντικών αλλαγών στον κώδικα πριν την εισαγωγή του στη βασική γραμή ανάπτυξης, έχει εγκατασταθεί η εφαρμογή Review Board στην παρακάτω διεύθυνση: |
||
4 | |||
5 | http://reviews.openeclass.org/ |
||
6 | |||
7 | Το κάθε μέλος της ομάδας που επιθυμεί να ανεβάσει κώδικα ή να συμμετάσχει στο review θα πρέπει να εγγραφεί στην εφαρμογή. Γενικά ακολουθούμε διαδικασία post-commit review, δηλαδή η ανάπτυξη του κώδικα θα πρέπει να γίνει πρώτα commit σε κάποιο branch και βάσει αυτού να αποσταλεί στο Review Board. Δείτε στο τέλος αυτής της σελίδας οδηγίες για την ενεργοποίηση και τις ρυθμίσεις του Mercurial Review Board Extension. |
||
8 | |||
9 | 2 | Αλέξανδρος Διαμαντίδης | Αναλυτικό εγχειρίδιο χρήστη: http://www.reviewboard.org/docs/manual/1.7/users/ |
10 | |||
11 | 1 | Αλέξανδρος Διαμαντίδης | Ακολουθεί ένα παράδειγμα: ας πούμε ότι αναπτύσσουμε ένα νέο υποσύστημα στο branch "newfeature", το οποίο βασίζεται στο default branch. Αρχικά, πριν την αποστολή των αλλαγών μας για review, θα πρέπει να ελαχιστοποιήσουμε τις αλλαγές από το βασικό κώδικα που δε σχετίζονται με τις αλλαγές μας, κάνοντας merge με το default: |
12 | |||
13 | <pre>$ hg update newfeature |
||
14 | $ hg merge default |
||
15 | $ hg commit</pre> |
||
16 | |||
17 | Στη συνέχεια, μπορούμε να στείλουμε στο Review Board το patch που περιλαμβάνει τις αλλαγές του branch μας ως προς το default: |
||
18 | |||
19 | <pre>$ hg postreview --parent default |
||
20 | |||
21 | Changeset 6535:5df59fedd8a5 |
||
22 | --------------------------- |
||
23 | Merge with default. |
||
24 | |||
25 | reviewboard: http://reviews.openeclass.org/ |
||
26 | |||
27 | username: adia |
||
28 | password: ********** |
||
29 | Looking for 'reviews.openeclass.org /' cookie in /home/adia/.post-review-cookies.txt |
||
30 | Loaded valid cookie -- no login required |
||
31 | Repositories: |
||
32 | [1] Open eClass |
||
33 | repository id: 1 |
||
34 | review request draft saved: http://reviews.openeclass.org/r/8/</pre> |
||
35 | |||
36 | Στη διεύθυνση που εμφανίζεται στο τέλος των μηνυμάτων, μπορούμε να βρούμε την αίτηση review που θέλουμε να κοινοποιήσουμε. Την ανοίγουμε, ελέγχουμε ότι το diff έχει όντως τις αλλαγές που θέλουμε, και συμπληρώνουμε τα επιθυμητά πεδία. Θα πρέπει να βεβαιωθούμε ότι τουλάχιστον τα Summary και Description έχουν συμπληρωθεί με την περιγραφή των αλλαγών που θέλουμε να στείλουμε, ενώ στο πεδίο Groups συμπληρώνουμε υποχρεωτικά "eclass" ώστε το αίτημα να σταλεί στη λίστα eclass-dev. Μπορούμε να συμπληρώσουμε και ονόματα συγκεκριμένων μελών εφόσον επιθυμούμε προσωπική κοινοποίηση. Τέλος, μπορούμε να δημοσιεύσουμε το αίτημα. |
||
37 | |||
38 | Κατά τη διάρκεια του ελέγχου, μπορεί να γίνουν παρατηρήσεις που οδηγούν σε αλλαγές του κώδικα που επιθυμούμε να στείλουμε. Μπορούμε να κάνουμε τις αλλαγές commit στο branch όπου δουλεύουμε, και να στείλουμε ενημερωμένο αίτημα review: |
||
39 | |||
40 | <pre>$ hg postreview --parent default -e 8</pre> |
||
41 | |||
42 | Η παράμετρος -e έχει το id που εμφανίζεται στο url του αιτήματος . |
||
43 | |||
44 | Μετά την ολοκλήρωση του ελέγχου και την έγκριση για merge, μπορούμε να στείλουμε τις αλλαγές μας στο default branch: |
||
45 | |||
46 | <pre>$ hg update default |
||
47 | $ hg merge newfeature |
||
48 | $ hg commit</pre> |
||
49 | |||
50 | Αν το branch προοριζόταν για συγκεκριμένο feature που η ανάπτυξή του έχει ολοκληρωθεί, στο commit μπορούμε να κλείσουμε το συγκεκριμένο branch δίνοντας την παράμετρο @--close-branch@ στην εντολή του commit. |
||
51 | |||
52 | h2. Εγκατάσταση Review Board Extension |
||
53 | |||
54 | Το "Review Board Extension":http://mercurial.selenic.com/wiki/ReviewboardExtension του Mercurial μπορεί να εγκατασταθεί ως εξής: |
||
55 | |||
56 | <pre>$ mkdir -p ~/.hgext |
||
57 | $ cd ~/.hgext |
||
58 | $ hg clone https://bitbucket.org/ccaughie/hgreviewboard</pre> |
||
59 | |||
60 | Στη συνέχεια, εισάγουμε στο αρχείο @~/.hgrc@ τα παρακάτω: |
||
61 | |||
62 | <pre>[extensions] |
||
63 | reviewboard = ~/.hgext/hgreviewboard |
||
64 | |||
65 | [reviewboard] |
||
66 | server = http://reviews.openeclass.org |
||
67 | user = <username μας στο Review Board> |
||
68 | password = <password στο Review Board></pre> |
||
69 | |||
70 | Μετά τα παραπάνω, θα είναι διαθέσιμη η εντολή @hg postreview@. |