Προς το περιεχόμενο

Visual Studio github σωστη χρηση


παπι

Προτεινόμενες αναρτήσεις

Λοιπον μεχρι τωρα δουλευα σε κατι project με το πισι μου και το λαπτοπ. Τα προτζεκτ ουσιαστικα ειναι στο πισι μου, και απο το λαπτοπ τα δουλευα με teamviewer. Τωρα που ανοιξε το private η github, και πραγματικα μου ελυσε τα χερια. 

Το θεμα, εγω το git το ειχα για τα checkpoints (commits). Γενικοτερα, δουλευα κατι, εκανα save το project, το ξαναδουλευα και οταν ηταν οκ κατα τη γνωμη μου, εκανα ενα commit και μετα δουλευα κατι αλλο κλπ. Τωρα που ανεβασα το project στη github, και επειδη εφαγα και κατι conflict, αυτο που κανω πλεον ειναι 

ανοιγω το visual studio (pc η laptop)

παταω το κουμπι sync στο extension του visual studio

παταω pull στο incoming commits

κανω τη δουλεια μου

παταω sync => pull στα outgoing commits

και κλεινω.

Ετσι ομως δημιουργουνται παρα πολλα commits και αναρωτιεμαι μηπως κανω κατι λαθος.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Δεν ξέρω τι κάνει το VS αλλά εν γένει η λογική στο git είναι να έχεις πολλά, μικρά commits που το κάθε ένα από αυτά κάνει ένα συγκεκριμένο πράγμα. Νομίζω ότι ένας καλός μπουσουλας είναι: αν δεν μπορείς να περιγράψεις τι κάνει το commit μέσα σε μία γραμμή max 100 χαρακτήρων, τότε το commit σου είναι πολύ μεγάλο.

Αν αυτό που θες να κάνεις είναι από τη φύση του αρκετά μεγάλο, τότε κάνεις ένα branch οπότε σπας τη δουλειά που έχεις να κάνεις σε πολλά commits εντός του branch το οποίο και κάνεις merge/rebase με το master στη συνέχεια.

Από τον τρόπο που το περιγράφεις μου φαίνεται ότι χρησιμοποιείς το git περισσότερο σαν backup/sync tool. Αν είναι έτσι, τότε κάτι σαν το dropbox πιθανά να σε εξυπηρετούσε και καλύτερα. Παρόλα αυτά νομίζω ότι το να μάθει κάποιος git δεν είναι προαιρετικό στις μέρες μας και δυστυχώς για να το μάθεις θα πρέπει ΙΜΗΟ να το χρησιμοποιείς στην καθημερινότητα σου.

Πάντως, αν αυτό που σε απασχολεί είναι ο αριθμος των commits που δημιουργεί το VS, τότε νομίζω ότι δεν υπάρχει λόγος να αγχώνεσαι. Δεν υπάρχουν τέτοια προβλήματα scaling (source) . Κάποιες φορές χρειάζεται να κάνεις garbage collection αλλά φαντάζομαι ότι το VS θα το κάνει από μόνο του.

Επεξ/σία από pmav99
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Όταν λες δημιουργούνται πολλά commits πώς δημιουργούνται; έχει το VS wrappers που από κάτω κάνουn git commit όποτε γουστάρουν πχ;

 

Προσωπικά αυτό που βρίσκω πιο βολικό πλέον πάντως είναι να χρησιμοποιώ το git απ' το command line ακόμη κι αν κώδικα γράφω με IDE. Τα tools της jetbrains ξέρω πως παίζουν πολύ καλά με αυτό (κάνεις checkout branch στο working directory και αλλάζει αυτόματα branch και το  IDE) θα υπέθετα πως κάτι παρόμοιο πρέπει να ισχύει και για το VS.

 

// σε περίπτωση που έχει να κάνει με αυτό, όταν κάνεις git pull να το καλείς με ---rebase (shortcut για git fetch ; git rebase origin/branch) έτσι αποφεύγεις τα διάφορα merge commits που θα σου σπαμάρουν το history.

Επεξ/σία από the other one
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επειδη το προτζεκτ ειναι ουσιαστικα στη github, εγω αντι να κανω save, βαραω commit. Τις αλλαγες δεν θελω να τις βαλω στο local repo αλλα στο remote.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Γενικά όσον αφορά το meaning των commits θα συμφωνήσω με αυτό που λέει o pmav99 εσύ τώρα θες να κάνεις ψιλοχακιά εδώ πέρα βέβαια γιατί άλλο το commit κι άλλο το save. Αν δεν θες να είναι πάρα πολλά μπορείς να τα κάνεις amend ή ένα squash μια στο τόσο (αλλά και στις 2 περιπτώσεις θα πρέπει να forceάρεις στο remote μετά οπότε προσοχή).

 

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Έχω ένα φάκελο με ένα project στο drive και κάνει sync αυτόματα όταν αλλάζω κάτι είτε στο PC είτε στο laptop. 

Χρησιμοποιώντας την εφαρμογή της google επιλέγεις ένα φάκελο που θα τα αποθηκεύει στο pc και τα στέλνει αυτόματα στο cloud. 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Εγώ έχω τον κώδικα μου στο Mega.nz

 

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

Δεν δουλεύει τόσο καλά με Android studio projects όπου τα environment variables είναι πολύ διαφορικά και σε άλλες πλατφόρμες. Αν υπάρχουν absolute paths, you're fucked. 

Give it a try.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...