pbp Δημοσ. 19 Σεπτεμβρίου 2013 Δημοσ. 19 Σεπτεμβρίου 2013 Γεια σας, έχω διαβάσει τον οδηγό του GitHub αλλά έχω μπερδευτεί λίγο. Για να μπορέσω ας πούμε να προσθέσω κάτι (έστω ένα function) σε ένα project που είναι στο Git Ποια βήματα πρέπει ακριβώς να ακολουθήσω?Κάνω Clone το repository του project μετά γράφω το function στο pc μου και μετά? πως το δείχνω κατα κάποιον τρόπο σε κάποιον απο τους main Developers για να αποδεκτούν αυτό που έκανα και να το κάνουν merge? Ευχαριστώ για το χρόνο σας.
Moderators Praetorian Δημοσ. 19 Σεπτεμβρίου 2013 Moderators Δημοσ. 19 Σεπτεμβρίου 2013 Από το github οι οδηγίες είναι: Κάνεις fork το repository που σε ενδιαφέρει, clone για να πάρεις τον κώδικα τοπικά, αλλαγές/commits/push στο δικό σου fork. Όταν πιστεύεις ότι ο κώδικας είναι έτοιμος για να τον εξετάσουν οι αρχικοί developers κάνεις pull request
pbp Δημοσ. 19 Σεπτεμβρίου 2013 Μέλος Δημοσ. 19 Σεπτεμβρίου 2013 Pull request κάνω μέσω του site ε? όχι μέσω του command prompt. οκ κατάλαβα σε γενικές γραμμές τι πρέπει να κάνω. Ο Developer όμως μου είπε "make sure you base anything you do on the branch called stable" Αυτό πως θα το προσέξω? Λογικά δεν θα δημιουργήσω εγώ το stable branch... κάπου δεν πρέπει να υπάρχει?
Moderators Praetorian Δημοσ. 19 Σεπτεμβρίου 2013 Moderators Δημοσ. 19 Σεπτεμβρίου 2013 Είτε εννοεί το Master (δεν νομίζω) είτε έχουν ονομάσει κάποιο branch "stable", είτε διατηρούν branches ανά stable release που έχουν οπότε κατεβάζεις αυτό που αντιστοιχεί στην τελευταία stable έκδοση. Αυτό καταλαβαίνω εγώ... Αλλά αφού μιλάτε γιατί δε ζητάς διευκρινήσεις να είσαι βέβαιος;
pbp Δημοσ. 19 Σεπτεμβρίου 2013 Μέλος Δημοσ. 19 Σεπτεμβρίου 2013 Εντάξει πήγα εκει που μου δείχνεις στην εικόνα και το stable υπάρχει στη λίστα!Οπότε, απλά αλλάζω branch και κάνω push και pull request εκει!Am I right?
Moderators Praetorian Δημοσ. 19 Σεπτεμβρίου 2013 Moderators Δημοσ. 19 Σεπτεμβρίου 2013 Πατάς το "fork" εικόνίδιο (πάνω δεξιά). Αυτό θα δημιουργήσει forked repository στο λογαριασμό σου. Μετά (στον λογαριασμό σου) επιλέγεις αυτό το forked repository, κι έπειτα επιλέγεις και δουλεύεις στο branch που σου είπαν. Υποθέτω ότι κάτι τέτοιο θα δουλέψει από console (αφού κάνεις fork την repository): Κάνοντας clone και θέτοντας το HEAD στο branch που θέλεις ($BRANCH και $REMOTE_REPO τα θέτεις ανάλογα): git clone -b $BRANCH $REMOTE_REPO Χωρίς να φέρεις τα άλλα branches: mkdir $BRANCH cd $BRANCH git init git remote add -t $BRANCH -f origin $REMOTE_REPO git checkout $BRANCH http://stackoverflow.com/questions/1911109/git-clone-a-specific-branch Βασικά, μέχρι τώρα υποθέτω ότι δεν είσαι στην ομάδα ανάπτυξης του project και δεν μπορείς/δεν αφήνουν να κάνεις άμεσα push πράγματα στο repository. Αλλιώς είναι πιο απλά πράγματα. 1
pbp Δημοσ. 19 Σεπτεμβρίου 2013 Μέλος Δημοσ. 19 Σεπτεμβρίου 2013 Δεν είμαι στην ομάδα.Απλά είδα το project και αποφάσησα να σεινησφέρω πχ κάνοντας μετάφραση ή επεκτήνοντας μία καινούρια λειτουργία. Επικοινώνησα με τον Developer και μου έδωσε το ok.Αυτό ειναι όλο. Τώρα που φόρτωσα το Project στο Eclipse πως το τρέχω? Είναι μεγάλο project (θέλει install για να το τρέξει ένας απλός χρήστης). Δεν έχω εμπειρία με μεγάλα project σαν αυτό. Είναι παρόμοιος ο τρόπος όπως όταν τρέχω μια μικρή εφαρμογή ? Σε JAVA είναι. WOW!έχει επιλογή το Eclipse να φορτώνεις απευθείας το projetc απο το eclipse!
pbp Δημοσ. 19 Σεπτεμβρίου 2013 Μέλος Δημοσ. 19 Σεπτεμβρίου 2013 Έχω ήδη κάνει τη μετάφραση και δε μπορώ να κάνω compile το πρόγραμμα για να δω πως φαίνεται :/ Μπορεί να βοηθήσει κάποιος ?
sonyxp Δημοσ. 21 Σεπτεμβρίου 2013 Δημοσ. 21 Σεπτεμβρίου 2013 Πρόσφατα προσπάθησα να ανεβάσω ένα Test-Project για να δω πως δουλεύει το GitHub, μου έβγαλε την παναγία και αποτέλεσμα δεν είδα. Κατέβασα την κω*οεφαρμογή τους η οποία ήταν δύσχρηστη, πως στο διά*λο δουλεύει? Μήπως θέλει και στα Windows CMD για να ανεβάσεις κάτι?
pbp Δημοσ. 21 Σεπτεμβρίου 2013 Μέλος Δημοσ. 21 Σεπτεμβρίου 2013 Τελικά το έκανα!Η λογική είναι (πολύ χονδρικά απλα για να κάνεις ένα απλό commit σε ένα project)... Κάνεις Fork απο τη σελίδα του project (έχει button με όνομα Fork), μετα κάνεις clone to project μέσω του Git (εγώ το έκανα απο cmd) για να το κατεβάζεις στο pc σου τοπικά και επιλέγεις σε ποιο branch του project θες να είσαι με την εντολή git checkout <branch>. στη συνέχεια κάνεις git remote <url> για να συνδεθείς με το κατάλληλο repository που είναι αποθηκευμένο το project online. Μετά αφου επεξεργαστείς το project κάνεις "git add ." (git add all) και git commit -m "comment" για να επικυρώσεις τοπικά το commit που έκανες. και τέλος τρέχεις git push και πας στη σελίδα του project στο github και πατάς pull request! Απο κει και πέρα είναι θέμα του admin για το αν θα δεχτεί να προσθέσει αυτό που έκανες στο branch του project που επέλεξες.
imitheos Δημοσ. 22 Σεπτεμβρίου 2013 Δημοσ. 22 Σεπτεμβρίου 2013 Τελικά το έκανα! Η λογική είναι (πολύ χονδρικά απλα για να κάνεις ένα απλό commit σε ένα project)... Κάνεις Fork απο τη σελίδα του project (έχει button με όνομα Fork), μετα κάνεις clone to project μέσω του Git (εγώ το έκανα απο cmd) για να το κατεβάζεις στο pc σου τοπικά και επιλέγεις σε ποιο branch του project θες να είσαι με την εντολή git checkout <branch>. στη συνέχεια κάνεις git remote <url> για να συνδεθείς με το κατάλληλο repository που είναι αποθηκευμένο το project online. Μετά αφου επεξεργαστείς το project κάνεις "git add ." (git add all) και git commit -m "comment" για να επικυρώσεις τοπικά το commit που έκανες. και τέλος τρέχεις git push και πας στη σελίδα του project στο github και πατάς pull request! Απο κει και πέρα είναι θέμα του admin για το αν θα δεχτεί να προσθέσει αυτό που έκανες στο branch του project που επέλεξες. Η λογική που περιγράφεις αναφέρεται με εικόνες εδώ για όποιον θέλει να το δει. Από εκεί και πέρα υπάρχει απλά η διαφοροποίηση κάθε project. Για παράδειγμα σε άλλο θα δουλεύεις σε feature branches και θα στέλνεις να τα δουν. Άλλα project θέλουν να γίνεται merge στο master / develop / whatever και μετά να τους στέλνεις, κτλ. Πρόσφατα προσπάθησα να ανεβάσω ένα Test-Project για να δω πως δουλεύει το GitHub, μου έβγαλε την παναγία και αποτέλεσμα δεν είδα. Κατέβασα την κω*οεφαρμογή τους η οποία ήταν δύσχρηστη, πως στο διά*λο δουλεύει? Μήπως θέλει και στα Windows CMD για να ανεβάσεις κάτι? Τι πρόβλημα αντιμετώπισες ? 1
pbp Δημοσ. 22 Σεπτεμβρίου 2013 Μέλος Δημοσ. 22 Σεπτεμβρίου 2013 Άλλα project θέλουν να γίνεται merge στο master / develop / whatever και μετά να τους στέλνεις, κτλ. Αυτό αμα δεν επικοινωνήσεις με το Developer του project λογικά δεν μπορείς να το μάθεις αλλιώς ε ?
imitheos Δημοσ. 22 Σεπτεμβρίου 2013 Δημοσ. 22 Σεπτεμβρίου 2013 Αυτό αμα δεν επικοινωνήσεις με το Developer του project λογικά δεν μπορείς να το μάθεις αλλιώς ε ? Τα projects στα οποία συνεισφέρουν πολλά άτομα συνήθως έχουν ένα έγγραφο που εξηγεί το workflow και ό,τι άλλες πληροφορίες "απαιτεί" το project (πχ tabs vs spaces, κτλ). Για παράδειγμα το git και ο πυρήνας του linux έχουν τα Coding Guidelines και Submitting Patches, το Wine εξηγεί ότι επιθυμεί "rebase workflow" αντί για "merge" και πάει λέγοντας. Αν το project δεν αναφέρει τίποτα, τότε μπορείς να πάρεις μια ιδέα κοιτώντας τα υπάρχοντα αρχεία και το git log ή να ρωτήσεις όπως είπες κάποιο developer. 1
sonyxp Δημοσ. 22 Σεπτεμβρίου 2013 Δημοσ. 22 Σεπτεμβρίου 2013 Ότι στην εφαρμογή που κατεβάζεις (όχι CMD), δεν μπορώ να βρω στο γραφικό περιβάλλον πως να ανεβάσω κάποιο Project. Βασικά θέλω να έχω πρόσβαση από διαφορετικές πηγές, παράδειγμα: Έστω ότι έχω ένα απλό Project σε DevC++, θέλω να το ανεβάσω στο Github ώστε να μην κουβαλάω το λαπτοπ μαζί μου, να μπορώ ρε παιδί μου να κατεβάσω μόνο το DevC++ και να μπω από την βιβλιοθήκη της σχολής πχ, ότι δουλειά κάνω να αποθηκευτεί... θα μου πεις πάρε flashaki, σωστό! απλά θέλω να δω πως δουλεύουν αυτά τα κολοκύθια. ΥΓ: Κάτι έχει πάρει το μάτι μου ότι γίνεται και με Dropbox, κατεβάζεις την εφαρμογή στον υπολογιστή σου και κάνει μόνο του Sync κάποιο αρχείο.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα