Σχετικά
git-flow είναι ένα σύνολο από επεκτάσεις για το git που παρέχουν υψηλού επιπέδου λειτουργίες σε εν αποθετήρια για το μοντέλο διακλαδώσεων του Vincent Driessen's. λεπτομέρειες
★ ★ ★
Αυτό το φύλλο αναφοράς, παρουσιάζει την βασική χρήση και τα αποτελέσματα των λειτουργιών του git-flow
★ ★ ★
Βασικές συμβουλές
- Το Git flow παρέχει εξαιρετική βοήθεια στην γραμμή εντολών και στην έξοδο. Διαβάστε προσεκτικά για να δείτε τι συμβαίνει...
- Το τερματικό Sourcetree για OSX/Windows είναι ένα εξαιρετικό γραφικό περιβάλλων εργασίας για git και παρέχει υποστήριξη για το git flow
- Git-flow είναι μια λύση βασισμένη στο πάντρεμα (merge). Δεν αναπροσαρμόζει διακλαδώσεις χαρακτηριστικών.
★ ★ ★
Εγκατάσταση
- Είναι προϋπόθεση να έχετε ήδη εγκατεστημένο το git στον υπολογιστή σας.
- Το Git flow λειτουργεί σε OSX, Linux και Windows
★ ★ ★
OSX
Homebrew$ brew install git-flowMacports
$ port install git-flow
Linux
$ apt-get install git-flow
Windows (Cygwin)
$ wget -q -O - --no-check-certificate https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash
Χρειάζεστε το wget και το util-linux για να εγκαταστήσετε το install git-flow.
Για αναλυτικές οδηγίες εγκατάστασης του git flow παρακαλώ επισκεφτείτε το git flow wiki.
Αρχίζοντας
Το Git flow πρέπει να προετοιμαστεί, ώστε να προσαρμόσει τις ρυθμίσεις του έργου σας.
★ ★ ★
Προετοιμασία
Αρχίστε να χρησιμοποιείτε το git-flow προετοιμάζοντας το, μέσα σε ένα git εν-αποθετήριο (git repository):
git flow init
Θα πρέπει να απαντήσετε μερικές ερωτήσεις σχετικά με τους κανόνες ονοματοδοσίας για τις διακλαδώσεις.
Συνιστάτε η χρήση των τιμών που προτείνονται.
Χαρακτηριστικά
- Δημιουργήστε νέα χαρακτηριστικά για επερχόμενες εκδώσεις
- Τυπικά υπάρχει μόνο στα εν-αποθετήρια των προγραμματιστών
★ ★ ★
Αρχίστε ένα νέο χαρακτηριστικό
Η δημιουργία ενός νέου χαρακτηριστικού αρχίζει (δημιουργείται) από την διακλάδωση 'develop'
Αρχίστε την δημιουργία νέου χαρακτηριστικού με την εντολή
git flow feature start MYFEATURE
Αυτή η ενέργεια δημιουργεί μια νέα διακλάδωση για νέο χαρακτηριστικό βασισμένη στην διακλάδωση 'develop' και μεταπήδηση στην νέα διακλάδωση
Ολοκληρώστε την δημιουργία ενός νέου χαρακτηριστικού.
Αυτή η ενέργεια κάνει τα ακόλουθα
- Παντρεύει το MYFEATURE στο'develop'
- Αφαιρεί την διακλάδωση που δημιουργήθηκε για το νέο χαρακτηριστικό
- Μεταπηδά ξανά στην διακλάδωση 'develop'
git flow feature finish MYFEATURE
Δημοσιεύστε ένα χαρακτηριστικό
Παράγετε ένα χαρακτηριστικό της εφαρμογής σας σε συνεργασία με άλλους προγραμματιστές;
Δημοσιεύστε το χαρακτηριστικό σας στον απομακρυσμένο server, ώστε να μπορούν οι άλλοι προγραμματιστές να το χρησιμοποιήσουν.
git flow feature publish MYFEATURE
Πάρτε ένα δημοσιευμένο χαρακτηριστικό
Πάρτε ένα δημοσιευμένο χαρακτηριστικό από τον απομακρυσμένο server που το δημοσίευσε κάποιος άλλος προγραμματιστής.
git flow feature pull origin MYFEATURE
Μπορείτε να παρακολουθείτε ένα χαρακτηριστικό στον απομακρυσμένο server (origin) χρησιμοποιώντας την εντολή git flow feature track MYFEATURE
Δημιουργήστε μια νέα έκδοση
- Υποστηρίζει την προετοιμασία μια έκδοσης για παραγωγή
- Επιτρέπει μικρής σημασίας επιδιορθώσεις σφαλμάτων και προετοιμάζει τα μέτα-δεδομένα για την έκδοση
★ ★ ★
Αρχίστε μια έκδοση
Για να αρχίσετε μια νέα έκδοση, χρησιμοποιήστε την εντολή του git flow, release. Η εντολή αυτή δημιουργεί μια νέα διακλάδωση, από την διακλάδωση 'develop'
git flow release start RELEASE [BASE]
Μπορείτε προαιρετικά να εισάγετε ως [BASE]
το sha-1 hash ενός commit για να αρχίσετε την νέα έκδοση το συγκεκριμένο commit. Το commit
πρέπει να είναι στην διακλάδωση 'develop'.
★ ★ ★
Είναι σοφό να δημοσιεύσετε την διακλάδωση έκδοσης, μετά την δημιουργία της, ώστε να επιτρέψετε commits έκδοσης από άλλους προγραμματιστές. Μπορείτε να το κάνετε αυτό, με τον ίδιο τρόπο που δημοσιεύεται τα νέα χαρακτηριστικά, με την εντολή:
git flow release publish RELEASE
(Μπορείτε να παρακολουθείτε απομακρυσμένες εκδόσεις με την εντολή git flow release track RELEASE
)
Ολοκληρώνοντας μια νέα έκδοση
Η ολοκλήρωση μιας νέας έκδοσης είναι ένα από τα μεγάλα βήματα στις διακλαδώσεις του git γιατί γίνονται πολλές ενέργειες μαζί:
- Παντρεύει την διακλάδωση της έκδοσης με την διακλάδωση 'master'
- Βάζει την ετικέτα στην έκδοση με το όνομα της
- Παντρεύει την έκδοση με την διακλάδωση 'develop'
- Διαγράψει την διακλάδωση της έκδοσης
git flow release finish RELEASE
Μην ξεχάσετε να σπρώξετε τις ετικέτες σας με την εντολή git push --tags
Άμεσες επιδιορθώσεις (Hotfixes)
- Οι άμεσες επιδιορθώσεις προκύπτουν από την ανάγκη της άμεσης επέμβασης σε μια ανεπιθύμητη κατάσταση της τρέχουσας έκδοσης στο λογισμικό παραγωγής.
- Μπορεί η νέα διακλάδωση να δημιουργηθεί από την αντίστοιχη ετικέτα στην κεντρική (master) διακλάδωση που χαρακτηρίζει την έκδοση παραγωγής.
★ ★ ★
git flow hotfix start
Όπως και οι άλλες εντολές του git flow, μία άμεση επιδιόρθωση αρχίζει με
git flow hotfix start VERSION [BASENAME]
Η επιλογή VERSION, χαρακτηρίζει το όνομα της νέας άμεσης επιδιόρθωσης. Προαιρετικά μπορείτε να ορίσετε ένα όνομα βάσης για να αρχίσετε από εκεί.
Ολοκληρώνοντας μία άμεση επιδιόρθωση
Με την ολοκλήρωση μιας άμεσης επιδιόρθωσης, η διακλάδωση παντρεύεται με την διακλάδωση develop και master. Επιπλέον η κεντρική διακλάδωση (master) αποκτά την ετικέτα του ονόματος της άμεσης επιδιόρθωσης.
git flow hotfix finish VERSION
Σημειώσεις
★ ★ ★
- Εδώ δεν καλύπτονται όλες οι διαθέσιμες εντολές, αλλά μόνο οι ποιο σημαντικές
- Μπορείτε να συνεχίσετε την χρήση του git και όλες τις εντολές του κανονικά όπως τις γνωρίζεται, το git flow είναι απλά μια συλλογή με εργαλεία.
- Το χαρακτηριστικό 'support' είναι ακόμα σε κατάσταση beta, δεν σας συμβουλεύουμε να το χρησιμοποιήσετε
- Αν σας αρέσει να παρέχετε μεταφράσεις, θα είναι χαρά μου να τις ενσωματώσω
★ ★ ★