Πώς να κλωνοποιήσετε όλους τους απομακρυσμένους κλάδους στο Git;

Έχω έναν κλάδο "master" και έναν κλάδο "ανάπτυξης", και οι δύο έχουν μεταφερθεί στο GitHub. Έχω "κλωνοποιήσει", "τραβήξει" και "φέρει", αλλά παραμένω ανίκανος να πάρω πίσω οτιδήποτε άλλο εκτός από τον κλάδο "master".

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

Το fetch που κάνετε θα πρέπει να πάρει όλους τους απομακρυσμένους κλάδους, αλλά δεν θα δημιουργήσει τοπικούς κλάδους για αυτούς. Αν χρησιμοποιείτε το gitk, θα πρέπει να δείτε τα απομακρυσμένα κλαδιά να περιγράφονται ως "remotes/origin/dev" ή κάτι παρόμοιο.

Για να δημιουργήσετε έναν τοπικό κλάδο με βάση έναν απομακρυσμένο κλάδο, κάντε κάτι σαν:

git checkout -b dev refs/remotes/origin/dev
Σχόλια (4)

Όταν κάνετε "git clone git://location", όλα τα κλαδιά και οι ετικέτες λαμβάνονται.

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

git checkout -b branch origin/branchname
Σχόλια (4)

Ένας git clone υποτίθεται ότι αντιγράφει ολόκληρο το αποθετήριο. Δοκιμάστε να το κλωνοποιήσετε και μετά εκτελέστε το git branch -a. Θα πρέπει να εμφανίσει όλα τα κλαδιά. Αν στη συνέχεια θέλετε να μεταβείτε στον κλάδο "foo" αντί του "master", χρησιμοποιήστε το git checkout foo.

Σχόλια (5)