Κατά τη διαδικασία χρήσης του Git, μας αρέσει να μην υποβάλλονται αρχεία όπως αρχεία καταγραφής, προσωρινά αρχεία, μεταγλωττισμένα ενδιάμεσα αρχεία κ.λπ., επομένως πρέπει να ορίσουμε αντίστοιχους κανόνες παράβλεψης για να αγνοήσουμε τη δέσμευση αυτών των αρχείων.
Το Git αγνοεί τη μέθοδο των υποβολών αρχείων
Υπάρχουν τρεις τρόποι για να παραβλέψετε αρχεία που δεν θέλετε να δεσμεύσετε στο Git.
Ορίστε το αρχείο .gitignore στο έργο σας Git
Αυτό γίνεται με τον καθορισμό ενός αρχείου .gitignore σε ένα φάκελο της μελέτης, όπου ορίζονται οι αντίστοιχοι κανόνες παράβλεψηςΤρέχων φάκελοςΗ συμπεριφορά υποβολής Git του αρχείου κάτω από το Τα αρχεία .gitignore μπορούν να υποβληθούν σε δημόσια αποθετήρια, πράγμα που σημαίνει ότι όλοι οι προγραμματιστές του έργου μοιράζονται ένα καθορισμένο σύνολο κανόνων παράβλεψης. Στο αρχείο .gitingore, καθορίστε έναν κανόνα παράβλεψης σε κάθε γραμμή, ακολουθώντας την αντίστοιχη σύνταξη. Για παράδειγμα:
Καθορίστε τα αρχεία εξαίρεσης στις ρυθμίσεις του έργου Git
Αυτή είναι απλώς μια προσωρινή προδιαγραφή της συμπεριφοράς του έργου, η οποία απαιτεί την επεξεργασία του αρχείου .git/info/exclude στο τρέχον έργο και, στη συνέχεια, την εγγραφή του αρχείου στο οποίο πρέπει να αγνοηθεί η υποβολή. Σημειώστε ότι ο ριζικός κατάλογος των αρχείων που παραβλέπονται καθορίζεται με αυτόν τον τρόπο είναι ο ριζικός κατάλογος του έργου.
Ένα αρχείο .gitignore που ορίζει το καθολικό Git
Εκτός από τη δυνατότητα ορισμού αρχείων .gitignore στο έργο μας, μπορούμε επίσης να ρυθμίσουμε ένα καθολικό αρχείο git .gitignore για τη διαχείριση της συμπεριφοράς όλων των έργων Git. Αυτή η προσέγγιση δεν είναι κοινή μεταξύ διαφορετικών προγραμματιστών έργων και είναι μια συμπεριφορά σε επίπεδο εφαρμογής Git πάνω από το έργο.
Αυτό απαιτεί επίσης τη δημιουργία ενός αντίστοιχου αρχείου .gignogno, το οποίο μπορεί να τοποθετηθεί οπουδήποτε. Στη συνέχεια, διαμορφώστε το Git με την ακόλουθη εντολή:
Το Git αγνοεί τους κανόνες
Για λεπτομερείς κανόνες παράβλεψης, ανατρέξτε στην επίσημη αγγλική τεκμηρίωση στη διεύθυνση:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Το Git αγνοεί την προτεραιότητα του κανόνα
Στο αρχείο .gitingore, καθορίστε έναν κανόνα παράβλεψης για κάθε γραμμή και το Git ελέγχει για πολλαπλές πηγές όταν αγνοεί κανόνες, με την ακόλουθη προτεραιότητα (από την υψηλότερη προς τη χαμηλότερη):
- Διαβάστε τους διαθέσιμους κανόνες παράβλεψης από τη γραμμή εντολών
- Οι κανόνες που ορίζονται από τον τρέχοντα κατάλογο
- Οι κανόνες που ορίζονται από τον γονικό κατάλογο είναι αναδρομικοί
- $GIT_DIR/info/exclude αρχείο
- core.excludesαρχείο
Το Git αγνοεί τη σύνταξη αντιστοίχισης κανόνων
Στο αρχείο .gignore, η σύνταξη για τον κανόνα παράβλεψης για κάθε γραμμή είναι η εξής:
- Τα κενά διαστήματα που δεν ταιριάζουν με αυθαίρετα αρχεία μπορούν να χρησιμοποιηθούν ως διαχωριστικά και μπορούν να διαφύγουν με ανάστροφες καθέτους
- # Το σχόλιο αναγνώρισης αρχείου στην αρχή μπορεί να διαφύγει χρησιμοποιώντας μια ανάστροφη κάθετο
- ! Η αναγνώριση σχήματος στην αρχή είναι αρνητική και το αρχείο θα συμπεριληφθεί ξανά, εάν εξαιρεθεί ο γονικός κατάλογος του αρχείου, χρησιμοποιήστε ! δεν θα συμπεριληφθεί ξανά. Η διαφυγή μπορεί να γίνει χρησιμοποιώντας ανάστροφη κάθετο
- / 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
- / 开始的模式匹配项目跟目录
- Εάν ένα μοτίβο δεν περιέχει κάθετο, ταιριάζει με τα περιεχόμενα σε σχέση με την τρέχουσα διαδρομή αρχείου .gitignore και εάν το μοτίβο δεν βρίσκεται στο αρχείο .gignore, σε σχέση με τη ρίζα του έργου
- ** Οι αντίστοιχοι κατάλογοι πολλαπλών επιπέδων μπορούν να χρησιμοποιηθούν στην αρχή, στη μέση και στο τέλος
- ? Καθολική αντιστοίχιση μεμονωμένων χαρακτήρων
- [ ] Καθολική λίστα αντιστοίχισης μεμονωμένων χαρακτήρων
Συνήθη παραδείγματα αντιστοίχισης:
- bin/: αγνοεί το φάκελο bin κάτω από την τρέχουσα διαδρομή, όλα κάτω από αυτόν το φάκελο αγνοούνται, όχι το αρχείο bin
- /bin: 忽略根目录下的bin文件
- /*.c: 忽略 cat.c,不忽略 build/cat.c
- debug/*.obj: Αγνοήστε τον εντοπισμό σφαλμάτων/io.obj, μην αγνοήσετε τον εντοπισμό σφαλμάτων/κοινά/io.obj και εργαλεία/εντοπισμό σφαλμάτων/io.obj
- **/foo: αγνοήστε /foo, a/foo, a/b/foo, κ.λπ.
- A/**/B: Αγνοήστε τα A/B, A/X/B, A/X/Y/B, κ.λπ.
- !/bin/run.sh: Μην αγνοείτε run.sh αρχεία στον κατάλογο bin
- *.log: Παράβλεψη όλων των αρχείων .log
- config.php: 忽略当前路径的 config.php 文件
Ο κανόνας .gitignore δεν τίθεται σε ισχύ
Το .gitignore μπορεί να αγνοήσει μόνο αρχεία που δεν παρακολουθούνται αρχικά και η τροποποίηση του .gitignore είναι αναποτελεσματική εάν ορισμένα αρχεία έχουν ήδη συμπεριληφθεί στη διαχείριση εκδόσεων.
Η λύση είναι να διαγράψετε το τοπικό cache (να το αλλάξετε σε κατάσταση μη παρακολούθησης) πριν από τη δέσμευση:
(Τέλος)
|