Urdu Ελληνικά
English English Deutsch Deutsch Español Español Français Français Italiano Italiano Nederlands Nederlands Português Português Русский Русский Ελληνικά Ελληνικά
Login



 

Αντίγραφο εργασίας Joomla! επέκταση

Επίδειξη
Λήψεις
Joomla! 1.5
Εκδοχή 1.0.1
Λήψη
Φόρουμ
Φροντιστήριο
GoogleCode

Αφηρημένο

Αυτό είναι ένα είδος ανατροπής για το Joomla! ζουν χώρο. GSoC Ιδέες Έργων 2009: Αντίγραφο εργασίας της ιστοσελίδας Joomla Ζωντανά

Ιδέα & Οφέλη

Οι διαχειριστές συνήθως λειτουργούν σε ζωντανή περιοχή τους άμεσα και μερικές φορές κάνουν λάθη όπως κάνουν όλοι οι άνθρωποι. Ως αποτέλεσμα, η ζωντανή περιοχή παίρνει μπέρδεμα μετά την επέκταση της διαδικασίας εγκατάστασης / απεγκατάστασης και την εκ νέου διαμόρφωση. Η ιδέα είναι να έχετε ένα λειτουργικό αντίγραφο του ζωντανού ιστοτόπου και να κάνετε αλλαγές σε αυτό, τότε, αν όλα είναι εντάξει μετά από κάποιες δοκιμές, μπορείτε να εγκρίνει τις αλλαγές και το εργαλείο θα ισχύουν για τους ζωντανού ιστοτόπου σας.

Θα ήθελα επίσης να εφαρμόσουν ορισμένες βασικές λειτουργίες του Subversion σε αυτό το έργο, π.χ. διαπράττουν / εγκρίνει, ενημέρωση / συγχρονίσετε, να επανέλθει, συγχώνευση, τη δημιουργία κώδικα, ισχύουν έμπλαστρο (SVN εργασίες μετά).

Χρησιμοποιώντας το εργαλείο αυτό, οι άνθρωποι θα κάνουν λιγότερα λάθη στο ζωντανό χώρο του ξενοδοχείου και να πάρει λιγότερο νευρικό!

Ορόσημα

Η δημιουργία μιας διεπαφής API και θα χρειαστεί για να ολοκληρωθεί αυτό το έργο. Και οι δύο θα αναπτυχθούν ταυτόχρονα σε θέση να κάνει δοκιμές από το περιβάλλον. Θα συνεχίσω τις κύριες ιδέες και τα πρότυπα κωδικοποίησης του Joomla! Πλαίσιο ελπίζοντας ότι θα είναι ένα μέρος του Joomla! 1.6 στο μέλλον.

Κατά τη διάρκεια της αναπτυξιακής διαδικασίας θα υποθέσουμε ότι η ζωντανή ιστοσελίδα (πλοίαρχο ή τον γονέα μετά) και το αντίγραφο εργασίας (μετά του παιδιού) που λειτουργούν με τις ίδιες εκδόσεις και διαμορφώσεις του OS / Apache / MySQL / PHP, και η διαμόρφωση του διακομιστή θα μείνει ανέπαφο ( Αυτό το εργαλείο μπορεί να είναι μόνο ένα περιβάλλον δοκιμών για SERVER εκ νέου διαμόρφωση).

Τώρα θα περιγράψω σε γενικές γραμμές αυτό που θα είναι και πόσο εύκολο θα είναι να εργαστούμε με. Εδώ είναι μερικά βήματα διαχειριστές μπορούν να κάνουν:

  1. Δημιουργία όπως πολλοί παιδιού από τον πλοίαρχο να εργαστεί για τους (διαχειριστής μπορεί να δημιουργήσει ακόμη ένα μεγάλο παιδί)
  2. Τροποποιήστε το παιδί (επαν-ρύθμιση, προσθήκη / επεξεργασία περιεχομένου, την εγκατάσταση / απεγκατάσταση / ενημέρωση επεκτάσεις) και δοκιμών (μπορούμε να έχουμε ένα "bot κατάσκοπος" αν είναι απαραίτητο το παιδί να καθορίσει τις αλλαγές εύκολα)
  3. Εγκρίνει αλλαγές στο ζωντανό χώρο με έναν από αυτούς τους επιλογές:
    1. Δημιουργήστε ένα patch από το παιδί
    2. Εφαρμόστε το έμπλαστρο στον πλοίαρχο
    3. Άμεσα εγκρίνει αλλαγές στον πλοίαρχο του σκάφους (στην πραγματικότητα μπορεί να κάνει στη συνέχεια 3.1 3.2, μόνο σε ένα βήμα)
  4. Δείτε τις αλλαγές που έγιναν στο παιδί
  5. Συγχρονισμός με το παιδί του γονέα (όταν το παιδί είναι ξεπερασμένη)
  6. Επαναφορά του παιδιού στο κράτος μητρικής
  7. Συγχώνευση 2 τοποθεσίες (master-παιδί ή παιδί-παιδί) με ακεραιότητα αναφορών

Υπάρχουν 2 δυνατότητες να κάνουμε αλλαγές για το Joomla! ιστοσελίδα, η οποία είναι η αλλαγή της βάσης δεδομένων και / ή το σύστημα αρχείων. Έτσι θα υπάρξει 2 τύπους των λειτουργιών του API, το οποίο θα επιφέρει αλλαγές στη βάση δεδομένων και στο σύστημα αρχείων.

Εργασία με το σύστημα αρχείων είναι το ευκολότερο μέρος, γιατί κάθε αρχείο έχει τροποποιηθεί τελευταία ημερομηνία, γεγονός που καθιστά εύκολο να προσδιορίσετε ποιο αρχείο είναι νεότερο.

Εργασία με τη βάση δεδομένων είναι πολύ πιο περίπλοκη, επειδή μπορεί να υπάρχουν διάφορα σενάρια με τις σχέσεις.

Στόχος μου είναι να κάνω ένα API, το οποίο θα υλοποιήσει το SVN εργασίες όχι μόνο για τους πίνακες πυρήνα, αλλά και να 3rd πίνακες κόμμα, το οποίο μπορεί να έρθει με 3rd επεκτάσεις κόμμα.

Μελλοντικές βελτιώσεις

Είναι επίσης δυνατόν να έχετε έναν πίνακα ιστορία (#tablename_history) για κάθε πίνακα σε dB, η οποία θα κρατήσει εκδόσεις γραμμής πίνακα σε αυτό. Θα επιτρέψει εκδόσεων ολόκληρης της βάσης δεδομένων. Δεν είναι μόνο το περιεχόμενο, αλλά και τις παραμέτρους, τις θέσεις, κλπ θα εκδόσεων,. Το άλλο πράγμα, το οποίο μπορεί να γίνει, είναι να έχουμε πίνακες γλώσσας και να κρατήσουν μεταφράσεις γραμμής πίνακα σε αυτές.

Χρονοδιάγραμμα

20 Απρίλιο - Μάιο 17: Χρόνο να μιλήσει με το σύμβουλο
Εβδομάδα 1 Μαΐου 18 - 22: Διασύνδεση και λειτουργίες API για να κάνει ένα παιδί από τον πλοίαρχο. (1)
Εβδομάδα 2 Μαΐου 25 - 29: Διασύνδεση και λειτουργίες API για να δείτε αλλαγές που έγιναν στο παιδί. (4)
Εβδομάδα 3 Ιούνιο 1 - 5: Διασύνδεση και λειτουργίες API για να επανέλθει το παιδί. (6)
Εβδομάδα 4 Ιούνιο 8 - 12: Διασύνδεση και λειτουργίες API για να συγχρονίσετε το παιδί. (5)
Εβδομάδα 5 Ιούνιο 15 - 19: Διασύνδεση και API λειτουργίες για να δημιουργήσετε ένα patch. (3.1)
Εβδομάδα 6 Ιούνιο 22 - 26: Διασύνδεση και λειτουργίες API για να εφαρμοστεί το έμπλαστρο. (3.2, 3.3)
Εβδομάδα 7 29 Ιούνιο - Ιούλιο 3: ΠΡΟΕΤΟΙΜΑΣΙΑ ΓΙΑ ΤΗΝ ΕΝΔΙΑΜΕΣΗ ΑΞΙΟΛΟΓΗΣΗ
Εβδομάδα 8 Ιούλιο 6 - 10: ΥΠΟΒΑΛΛΕΙ ΤΗΝ ΕΝΔΙΑΜΕΣΗ ΑΞΙΟΛΟΓΗΣΗ
Εβδομάδα 9 Ιούλιο 13 - 17: Διασύνδεση και API λειτουργίες για τη συγχώνευση 2 τοποθεσίες. (7)
Εβδομάδα 10 Ιούλιο 20 - 24: ΚΕΝΟ ΧΡΟΝΟΣ
Εβδομάδα 11 Ιούλιο 27 - 31: ΚΕΝΟ ΧΡΟΝΟΣ
Εβδομάδα 12 Αύγουστο 3 - 7: ΠΡΟΕΤΟΙΜΑΣΙΑ για την τελική αξιολόγηση, να συνδυάσετε τα πάντα στη θέση τους
Εβδομάδα 13 Αύγουστο 10 - 14: ΜΟΛΥΒΙΑ ΚΑΤΩ, ΣΥΝΟΠΤΙΚΟΥ ΑΠΟΤΕΛΕΣΜΑΤΑ, γράψιμο τεκμηρίωσης
Εβδομάδα 14 Αύγουστο 17 - 21: ΥΠΟΒΟΛΗ ΤΗΣ ΤΕΛΙΚΗΣ ΑΞΙΟΛΟΓΗΣΗΣ
Αύγουστος 22 - 25: ΩΡΑ ΓΙΑ ΑΠΟΦΑΣΕΙΣ ΤΗΣ ΤΕΛΕΥΤΑΙΑΣ ΣΤΙΓΜΗΣ

Webinar

Κάντε κλικ για να ακούσετε το κείμενο που επισημαίνεται!