Project

General

Profile

Mercurial και Review Board

Προετοιμασία και περιγραφή διαδικασίας

Βήμα 1 - Προαπαιτούμενα

  • Εγκατεστημένο το Mercurial στο λειτουργικό σύστημα των developers
    • Οδηγίες για Windows/Mac/Linux
    • Οδηγίες για ρύθμιση του Netbeans ώστε να χρησιμοποιεί το mercurial του συστήματος
  • Χρήση γραφικών εργαλείων
  • Εγκατάσταση Python και RBTools (θα χρησιμοποιήσουμε το http://www.reviewboard.org/docs/manual/1.7/users/tools/post-review ως μπούσουλα)
  • Εγκατάσταση Εργαλείου για 3-way Merge

Βήμα 2 – Βασικές Διαδικασίες

(Βασικός μπούσουλας υπάρχει εδώ: http://hgbook.red-bean.com/read/a-tour-of-mercurial-the-basics.html)

  • Διαδικασία Clone
  • Διαδικασία αλλαγής Branch
    • Σημείωση: Pull θα μπορούν να κάνουν άπαντες, ούτως ή άλλως το project είναι open source και δικαίωμα ανάγνωσης έχουν όλοι (ακόμα και οι anonymous)
  • Διαδικασία έλεγχου Status, αναμονών για Εισερχόμενες/Εξερχόμενες αλλαγές (status, incoming, outgoing)
  • Διαδικασία λήψης αλλαγών και συγχρονισμού με το κεντρικό repository (Pull, Update, Merge [Σημείωση: το merge ίσως καλύτερα να το περιγράψουμε στο βήμα 4])

Βήμα 3 – Ρυθμίσεις για Mercurial Repository και ReviewBoard

  • Ρύθμιση για τα Specifics του Openeclass (username/pass για Mercurial και ReviewBoard)
  • Ρύθμιση Mercurial
    • Username
    • E-mail
    • Ignore Files
    • Plugins (μπορούμε να παρουσιάσουμε ή απλώς να αναφέρουμε κάποια χρήσιμα, όπως το graphlog, hgk, color, extdiff, progress)
  • Ρύθμιση RBTools (.reviewboardrc)

Βήμα 4 – Διαδικασίες Τοπικών Αλλαγών

  • Διαδικασίες προσθήκης/αφαίρεσης αρχείων (add, remove, addremove, rename)
  • Διαδικασία Revert
  • Διαδικασία Commit
  • Διαδικασία Rollback

Βήμα 5 – Διαδικασίες αποστολής Patch/Diff για reviewing στο ReviewBoard

Σημείωση: η αποστολή στο ReviewBoard είναι υποχρεωτική εκτός εξαιρέσεων που θα ορίσουμε στην πράξη (πχ πολύ minor αλλαγές)
  • Μέσω του Mercurial Review Board plugin: (προτεινόμενο): Αναλυτικές οδηγίες
  • Μέσω Web UI (αποστολή patch με το χέρι) ή RBTools (δεν προτείνεται)

Βήμα 6 – Διαδικασία αποστολής Αλλαγών

  • Διαδικασία Push
    • η συγκεκριμένη διαδικασία θα προχωράει κατόπιν επιτυχούς reviewing στο ReviewBoard ή/και συνεννόησης με την κεντρική ομάδα
    • Σημείωση: το push θα επιτρέπεται μόνο στο development (trunk) branch, στα άλλα branches δεν θα επιτρέπεται (αυτό μπορεί να επιβληθεί με το ACL extension)