Δημοσιεύτηκε: 11 Ιουν 2009, 20:57
από simosx
thelf έγραψε:...
Το δοκίμασα και δουλεύει κι έτσι. Όμως δεν ξέρω αν έκανα κάτι λάθος γιατί προσπαθώ να φτιάξω το patch με git diff αλλά μου εμφανίζει αυτό
fatal: git diff [--no-index] takes two paths
Βασικά δεν κατέβασα πάλι τον πυρήνα της alsa απλώς έκανα edit το αρχείο sigmatel_patch.c - save - και μετά
./AlsaUpgrade-1.0.x-rev-1.17.sh -c
./AlsaUpgrade-1.0.x-rev-1.17.sh -i
και επανεκκίνηση. Αν ανοίξω το αρχείο φαίνεται ότι είναι αποθηκευμένες οι αλλαγές, απλώς δεν μπορώ να φτιάξω το patch.


Οι εντολές 'git' λειτουργούν μέσα σε αποθετήριο git, και συγκεκριμένα στον κατάλογο που δημιουργήθηκε όταν έκανες 'git clone ....'.
Διαφορετικά, η εντολή 'git diff' εμφανίζει το σφάλμα που είχες παραπάνω.

Τι μπορείς να κάνεις;

α. Το πρόγραμμα AlsaUpgrade έχει την επιλογή «-snap» που επιτρέπει να δοκιμάσεις την πιο πρόσφατη έκδοση που προγραμματίζει ο δημιουργός της Alsa. Αν δοκιμάσεις τώρα με το -snap, θα δεις ότι η Alsa έχει ήδη τη διόρθωση που στείλαμε!
β. Όπως είναι τώρα μπορείς να μετατρέψεις το 'snapshot' σε αποθετήριο git (git repository) με τις παρακάτω εντολές

Κώδικας: Επιλογή όλων
cd alsa-driver/
git init                                # αρχικοποιεί το αποθετήριο, δημιουργεί υποκατάλογο .git/ με στοιχεία
git add .                            # προσθέτει όλα τα αρχεία του alsa-driver/ στη λίστα αρχείων για να μπουν στο αποθετήριο
git commit -m "Initial import"  .               # βάζει όλα τα αρχεία που ήταν έτοιμα στο τοπικό αποθετήριο (τα καταχωρεί στο alsa-driver/.git/)


Τώρα, αν κάνεις αλλαγές σε αρχείο μέσα στο alsa-driver/, μπορείς να εκτελέσεις
Κώδικας: Επιλογή όλων
git diff


για να δεις τις αλλαγές που έγιναν.
Με π.χ. 'git reset --hard' μπορείς να επαναφέρεις το αποθετήριο στην αρχική του μορφή.

Το αποθετήριο αυτό που φτιάξαμε δεν έχει το ιστορικό όλης της δουλειάς που προηγήθηκε, και μας βολεύει μόνο για να τρέχουμε το 'git diff'.
Spoiler: show
Υπάρχει τρόπος να κάνεις σύνδεση με το πλήρες αποθετήριο του Takeshi που είναι git://git.kernel.org/pub/scm/linux/kern ... nd-2.6.git και να το διατηρείς ενημερωμένο τοπικά με την εντολή git pull. Κάτι τέτοιο ίσως είναι λίγο προχωρημένο.


Μπορείς να διαβάσεις περισσότερα για το git στο viewtopic.php?f=6&t=5424