Η εργασία εξ αποστάσεως έχει γίνει πολύ πιο συνηθισμένη στην ανάπτυξη ιστοσελίδων τα τελευταία χρόνια. Πριν από τον έλεγχο της έκδοσης, η εργασία εξ αποστάσεως στο ίδιο έργο ανάπτυξης θα ήταν απόλυτος εφιάλτης. Οι προγραμματιστές θα έπρεπε να Στείλτε μεγάλα αρχεία μεταξύ τους (πιθανώς μέσω ηλεκτρονικού ταχυδρομείου), επικόλληση στον δικό τους κώδικα πριν την αποστολή πίσω. Δεν υπήρχε κανένας πραγματικός τρόπος να παρακολουθήσετε αυτό που είχε προστεθεί και πότε.
Ευτυχώς, ο έλεγχος της έκδοσης έφτασε και έγινε ανάπτυξη σε όλα τα μέτωπα πολύ πιο διαχειρίσιμα. Τα έργα Web έχουν γίνει πολύ πιο εύκολο να εφαρμοστούν και να διαχειριστούν, ειδικά όταν πρόκειται για την εργασία σε μια ομάδα απομακρυσμένης ανάπτυξης. Δεν χρειάζεται πλέον να ανησυχείτε για την τρέχουσα έκδοση ενός ιστότοπου που αντικαθίσταται - κάθε μέλος της ομάδας είναι ελεύθερος να εργάζεται σε οποιοδήποτε αρχείο ανά πάσα στιγμή, δεν υπάρχει σύγχυση ως προς το πού αποθηκεύεται η τελευταία έκδοση ενός αρχείου - και την κορυφή αποθήκευση σύννεφων βοηθάει και με τη διαδικασία.
Σε αυτό το σεμινάριο, θα χρησιμοποιήσουμε Github για να διαχειριστείτε τον κώδικα μας. Υπάρχουν πολλοί διαφορετικοί τύποι εργαλείων ελέγχου έκδοσης εκεί έξω, όπως Bitbucket και TFVC, αλλά παρόλο που είναι διαφορετικά, οι αρχές παραμένουν οι ίδιες όταν πρόκειται για τη διαχείριση του κώδικα.
Για περισσότερους τρόπους για να διευκολύνετε τη διαδικασία οικοδόμησης ιστότοπου, δείτε τους οδηγούς μας στην κορυφή οικοδόμος ιστότοπου και web hosting υπηρεσία.
Πρώτον, είναι πολύ σημαντικό να έχετε ένα επιτυχημένο μοντέλο διακλάδωσης όταν εργάζεστε σε οποιαδήποτε ομάδα για να εκτελέσετε ομαλά τη διαδικασία ανάπτυξης και ανάπτυξης. Πιθανότατα θα έχετε πολλαπλούς προγραμματιστές που εργάζονται στο ίδιο έργο. Όταν εργάζεστε με ένα απομακρυσμένο εργάσιμο, πιστεύω ότι η καλύτερη ροή εργασίας αποτελείται από τρία κύρια κλαδιά καθώς και ένα σύνολο προσωρινών:
Θα υπάρχει επίσης ένα σύνολο υποκαταστημάτων χαρακτηριστικών. Ωστόσο, αυτά θα είναι απλά προσωρινά για να δημιουργήσουν αρχικά τα νέα χαρακτηριστικά.
Ας υποθέσουμε ότι τρέχετε μια ομάδα με δύο προγραμματιστές που εργάζονται εξ αποστάσεως. Θα τους καλέσουμε τη Σάρα και τον Τζέιμς: και οι δύο εργάζονται στον ίδιο ιστότοπο ηλεκτρονικού εμπορίου για έναν πελάτη. Η Sarah πρέπει να αναπτύξει ένα χαρακτηριστικό που καταγράφει τα στοιχεία του πελάτη.
Θα σπάσουμε αυτό κάτω σε τρεις ξεχωριστές ιστορίες χρηστών - προσθέτοντας, επεξεργασία και αφαίρεση - και στη συνέχεια προσθέστε αυτά τα τρία εισιτήρια στο backlog Sprint.
Έτσι, ας πούμε ότι η Sarah αρχίζει στην ενότητα Προσθήκη λεπτομερειών πελατών. Θα χρειαστεί να δημιουργήσει τις λεπτομέρειες των πελατών του χαρακτηριστικού και μια ιστορία χρήστη ένα για την πρώτη εργασία "πρόσθετες λεπτομέρειες".
Έλεγχος GIT ανάπτυξη & amp; & amp; git έλξη προέλευσης / ανάπτυξης
GIT Checkout -B Χαρακτηριστικό / Λεπτομέρειες πελατών
git checkout -b Προσθήκη-λεπτομέρειες
Η Σάρα θα συνεχίσει να εργάζεται για την προσθετική διεύθυνση του προσωρινού κλάδου και να δεσμεύσει την εργασία της καθώς αναπτύσσεται. Τώρα, ας πούμε ότι ο James θέλει να βοηθήσει τη Sarah με τη λειτουργία των πελατών, οπότε αρχίζει να εργάζεται για τη διαγραφή λεπτομερειών.
Ο Τζέιμς θα τραβήξει την τελευταία έκδοση του κοινού κλάδου και θα δημιουργήσει ένα νέο κλάδο για την ιστορία των χρηστών «Διαγραφή λεπτομερειών». Στη συνέχεια, μπορεί να αρχίσει να κάνει τις δικές του προσθήκες χωρίς να ανησυχεί για την αντικατάσταση του κώδικα της Sarah.
GIT Checkout Χαρακτηριστικό / Λεπτομέρειες πελατών
git έλξη προέλευσης / χαρακτηριστικό / λεπτομέρειες πελατών
git checkout -b Διαγραφή-Λεπτομέρειες
Θα χρησιμοποιήσει επίσης το προσωρινό του υποκατάστημα για να κωδικοποιήσει τοπικά και να δεσμεύσει τυχόν αλλαγές. Μόλις η Sarah έχει τελειώσει το χαρακτηριστικό της τοπικά, βάζει το εισιτήριο στην επανεξέταση κώδικα. Θα σπρώχνει τον κώδικα της στο υποκατάστημα σταδιοποίησης και θα ανοίξει ένα αίτημα έλξης με το περιβάλλον στάσης.
// ωθεί τον κώδικα της στο υποκατάστημα σταδιοποίησης
Git Push Προϊρίστε τις λεπτομέρειες
// Ανοίγει ένα αίτημα έλξης με το περιβάλλον στάσης
Git αιτήματος-Τραβήξτε τη στάση προσθήκης
Τώρα θα έχουμε τις λεπτομέρειες του πελάτη-λεπτομέρειες και οι δύο ιστορίες χρηστών διαθέτουν υποκαταστήματα σε αναπτυξιακές λεπτομέρειες και «διαγράψουν λεπτομέρειες».
Μόλις επανεξεταστεί ο κώδικας, μπορεί να συγχωνεύσει το κλάδο της σε στάδιο. Το εισιτήριο βρίσκεται τώρα στη στήλη επικύρωσης, περιμένοντας την επικύρωση από τον κύριο προγραμματιστή.
// παίρνει την τελευταία έκδοση του κλάδου σταδιοποίησης
GIT Checkout Στάση & amp; & amp; Git Τραβήξτε την προέλευση / Στάση
Git Monge Add-Details & AMP; & AMP; Git Push Staring Στάση
// χτίζει το περιβάλλον επικύρωσης
// και ζητά από τον ιδιοκτήτη του προϊόντος να επικυρώσει
Μόλις επικυρωθεί η εργασία της Sarah, το εισιτήριο μπορεί να μετακινηθεί στη στήλη. Μπορεί να συγχωνεύσει την εργασία της στο τμήμα χαρακτηριστικών και να ξεκινήσει μια άλλη ιστορία χρηστών, όπως η διαγραφή των λεπτομερειών του πελάτη.
// Τράβηξε την τελευταία έκδοση του κλάδου χαρακτηριστικών
GIT Checkout Χαρακτηριστικό / Λεπτομέρειες πελατών
Git Pull Προέλευση χαρακτηριστικό / Λεπτομέρειες πελατών
Git Monge Add-Διεύθυνση & AMP; & AMP; Χαρακτηριστικό προέλευσης GIT / Λεπτομέρειες πελατών
Όταν ολόκληρη η λειτουργία έχει επικυρωθεί τόσο από τον προγραμματιστή μολύβδου όσο και από τον πελάτη, η Sarah μπορεί να συγχωνεύσει το τμήμα χαρακτηριστικών να αναπτυχθεί, καθώς είναι έτοιμο να πάει.
// παίρνει την τελευταία έκδοση του καταστήματος ανάπτυξης
git checkout ανάπτυξη & amp; & amp; git έλξη προέλευσης / ανάπτυξης
Git Monge Χαρακτηριστικό / Λεπτομέρειες πελατών & AMP; & AMP; git push progin ανάπτυξη
Μόλις ολοκληρωθεί η ολοκλήρωση όλων και είναι έτοιμο να αναπτυχθεί στην παραγωγή, ο James συγχωνεύει την ανάπτυξη και την έναρξη της ανάπτυξης. Σε αυτό το σημείο θα ήξερε ότι όλοι οι κώδικες είναι σωστές και ο πελάτης είναι ευτυχισμένος. Ετικέττει τη δέσμευση της απελευθέρωσης για να πάρει την ιστορία κάθε έκδοσης.
Έλεγχος GIT ανάπτυξη & amp; & amp; git έλξη προέλευσης / ανάπτυξης
Git Checkout RELEASE & AMP; & AMP; git έλξη προέλευσης / απελευθέρωσης
Git Monge Ανάπτυξη & AMP; & AMP; git tag 2.1
Git Push Release Release - Αρχή
Αυτή η ροή εργασίας απομακρυσμένης ανάπτυξης μπορεί να είναι αρκετά δύσκολη στην πρώτη κατανόηση στην αρχή, αλλά αν πάρετε την ομάδα σας να εργάζεται με αυτή τη μέθοδο, τότε έχετε μια ελεύθερη ροή εργασίας χωρίς την ανάγκη να πανικοβληθείτε σχετικά με τα αρχεία που αντικατασταθούν ή οι προγραμματιστές σας που εργάζονται στην ίδια περιοχή.
Υπάρχουν μερικά βασικά πράγματα που πρέπει να θυμάστε:
GIT CO Ανάπτυξη & AMP; & AMP; git έλξη προέλευσης / ανάπτυξης
GIT Branch -d Στάση & amp; & amp; Git Push Origin - Στάση
git co -b Στάση & amp; & amp; Git Pull Προέλευση Στάση
Με μικρότερα έργα, ίσως θελήσετε να χρησιμοποιήσετε μια λιγότερο περίπλοκη ροή εργασίας. Θα μπορούσατε να χρησιμοποιήσετε το Master, το οποίο περιέχει την πιο ενημερωμένη έκδοση, ένα υποκατάστημα ανάπτυξης και στη συνέχεια ένα σύνολο υποκαταστημάτων για κάθε πρόσθετο χαρακτηριστικό - είτε αυτό είναι το φόρουμ, τη φόρμα επικοινωνίας, το σύστημα checkout. Όλα εξαρτώνται από την προσωπική σας προτίμηση.
Η αντιμετώπιση των συγκρούσεων συγχώνευσης είναι αρκετά δύσκολη αν όλοι εργάζεστε στο ίδιο δωμάτιο, αλλά μπορούν να γίνουν ακόμα περισσότεροι από έναν εφιάλτη εάν όλοι εργάζεστε σε ένα διαφορετικό γραφείο. Το πιο σημαντικό είναι να θυμόμαστε ότι μπορείτε πάντα να αναιρέσετε μια συγχώνευση και να επιστρέψετε στην κατάσταση πριν από τη σύγκρουση.
Είτε κάνετε όλες τις συγχωνεύσεις όπως ο κύριος προγραμματιστής ή η ομάδα σας είναι εκείνοι που τους κάνουν ανεξάρτητα, το πρώτο βήμα είναι να καταλάβουμε τι συνέβη.
Git θα σας πει ότι έχετε ασταμάτητα μονοπάτια μέσω κατάσταση :
Κατάσταση Git
# Στο σύστημα checkout υποκαταστήματος
# Έχετε ξεχωριστά μονοπάτια.
# (διορθώστε τις συγκρούσεις και τρέξτε "git sompet")
#
# Ακίνητα μονοπάτια:
# (χρήση "git add & lt; file & gt; ..." για να επισημάνετε ανάλυση)
#
# και τα δύο τροποποιημένα: checkout.html
#
Δεν υπάρχουν αλλαγές που προστίθενται για τη δέσμευση (χρήση "git add" και / ή "git commit -a")
Τώρα, η πιο κοινή αιτία μιας σύγκρουσης είναι όταν οι αλλαγές επηρεάζουν τα ίδια αρχεία στην ίδια γραμμή. Έτσι, ας ρίξουμε μια ματιά στο περιεχόμενο της συγκρουόμενης γραμμής. Θα παρατηρήσετε ότι το git είναι πραγματικά καλό στο γεγονός ότι θα σηματοδοτήσει τη συγκρούστηκε περιοχή, περικλείοντας το & lt; & lt; & lt; & lt; και & gt; & gt; & gt; & gt; & gt; "[άλλο / υποκατάστημα / όνομα] . Σε αυτή την περίπτωση, είναι Σύστημα ελέγχου .
& lt; & lt; & lt; & lt; & lt; ΚΕΦΑΛΙ
Αυτή η γραμμή διαπράχθηκε ενώ εργάστηκε στο υποκατάστημα "φόρμας χρήστη".
=======
Αυτή η γραμμή, αντιθέτως, διαπράχθηκε ενώ εργάστηκε στο υποκατάστημα "Checkout-System".
& gt; & gt; & gt; & gt; & gt; & gt; Ref / Heads / Checkout-System
Το περιεχόμενο μετά τον πρώτο δείκτη προέρχεται από τον τρέχοντα κλάδο εργασίας σας. Μετά τις γωνίες, το Git μας λέει ποιο υποκατάστημα προήλθαν οι αλλαγές. Μια γραμμή με ======= διαχωρίζει τις δύο αντιφατικές αλλαγές.
Τώρα μπορείτε απλά να ανοίξετε το αρχείο σε έναν επεξεργαστή, να αναζητήσετε τους δείκτες των συγκρούσεων και να κάνετε τις απαραίτητες τροποποιήσεις. Όταν τελειώσετε, το αρχείο πρέπει να κοιτάξει ακριβώς όπως θέλετε να κοιτάξει ή, εναλλακτικά, μπορείτε να πείτε ότι το Git ότι απλά θα πάτε με μία από τις επεξεργασμένες εκδόσεις, που ονομάζεται Δικός μας ή δικο τους .
GIT Checkout - Arours Path / To / Conflogy-File.html
Υπάρχουν επίσης πολλές εφαρμογές εργαλείων συγχώνευσης που μπορούν να βοηθήσουν με αυτό. Το καλειδοσκόπιο είναι ένα μεγάλο για Mac.
Είναι εξίσου σημαντικό με έναν προγραμματιστή μολύβδου να διαθέτει ένα εργαλείο διαχείρισης έργου για τη διαχείριση των πραγμάτων όπως τα καθήκοντα και τα σφάλματα, ειδικά όταν οι προγραμματιστές σας δεν βασίζονται στο γραφείο. Υπάρχουν πολλές λύσεις εκεί έξω, όπως το Zenhub και το Asuna, αλλά πιστεύω ότι το ενσωματωμένο έργο του Gitub και το σύστημα έκδοσης είναι το καλύτερο.
Μπορείτε να κάνετε πράγματα όπως να δημιουργήσετε ένα νέο έργο, να δημιουργήσετε πίνακες ή να εκχωρήσετε θέματα. Και μην συγχέετε μόνο τα ζητήματα με προβλήματα: μπορείτε επίσης να το χρησιμοποιήσετε για βελτιώσεις, ερωτήσεις και σφάλματα, μεταξύ άλλων.
Εδώ είναι μερικά από τα καλύτερα χαρακτηριστικά του:
Εάν πηγαίνετε στο Github και στη συνέχεια κατευθυνθείτε σε ένα από τα αποθετήρια σας, θα δείτε μια καρτέλα που ονομάζεται έργα. Από εκεί μπορείτε να επιλέξετε νέο έργο, να ρυθμίσετε τα στοιχεία του έργου σας και να δημιουργήσετε ένα νέο πρότυπο έργου.
Εάν έχετε επιλέξει τώρα την καρτέλα Θέματα που είναι κατά μήκος της επάνω και επιλέξτε Νέο ζήτημα, θα μπορείτε να δημιουργήσετε ένα νέο ζήτημα. Στη συνέχεια, μπορείτε να εφαρμόσετε διάφορες ετικέτες - αυτά είναι πράγματα όπως το σφάλμα, η βελτίωση, η ερώτηση και το αντίγραφο. Μπορεί επίσης να χρησιμοποιήσετε την ενίσχυση για ένα νέο χαρακτηριστικό ή ένα αίτημα. Στη συνέχεια, μπορείτε να αντιστοιχίσετε διάφορα μέλη της ομάδας στην εργασία, ένα ορόσημο και επίσης το έργο που μόλις δημιουργήσατε.
Τα αναθεωρημένα μέλη θα έχουν στη συνέχεια μια λίστα με όλα τα καθήκοντά τους και μπορείτε ακόμη και να χρησιμοποιήσετε το Διοικητικό Συμβούλιο για να διατηρήσετε ένα κομμάτι από το τι είναι σήμερα χτισμένο. Αν θυμάσαι το προηγούμενο σεμινάριο μας, μιλούσαμε για τα κινούμενα εισιτήρια για το Sprint Backlog και την επικύρωση. Έτσι, ο Github λειτουργεί πολύ καλά ως ένα εργαλείο all-in-one για την επίβλεψη ενός έργου.
Το άρθρο αυτό δημοσιεύθηκε αρχικά στο θέμα 311 του καθαρά , το περιοδικό Best-Selling στον κόσμο για τους σχεδιαστές και τους προγραμματιστές ιστοσελίδων. Αγοράζουν τεύχος 311 εδώ ή Εγγραφείτε εδώ .
Σχετικά Άρθρα:
(Credit Image: Sonny Flanaghan) Η μάθηση πώς να καθαρίσει τα πινέλα σωστά είνα�..
Πώς να σχεδιάσετε ένα τριαντάφυλλο - Πώς να σχεδιάσετε ένα τριαντάφυλλο βίντεο ..
Δημιουργώντας ένα κομμάτι Τρισδιάστατη τέχνη Με ένα φυσικό το..
Σε αυτό το εργαστήριο, θα σας δείξουμε πώς να βάψετε έναν ιππότη χρησιμ..
Οι μεσαιωνικές εκκλησίες, τα πράσινα βοσκοτόπια και τα αγροτικά σπίτι�..
Κάνοντας τα ρεαλιστικά εικονικά ρούχα είναι ένα από τα πιο δύσκολα καθ..
Με Σπασμένο χώρο Όντας ό, τι είναι - ένα ελεύθερο παιχνίδι ομαδ�..
Για πολύ καιρό τώρα έχω κολλήσει σε μια διαδρομή με το δικό μου Τρι..