לא כל קובץ בפרויקט שלך צריך להיות בשליטה על גרסאות. גלה אילו סוגי קבצים עליך להחריג ממאגר המקור שלך.
בקרת גרסאות היא כלי חיוני למעקב אחר שינויים בבסיס הקוד שלך, אבל אתה לא תמיד רוצה לעקוב אחר כל קובץ.
כדי למנוע עומס ולהפחית את הסיכון של הפצת מידע רגיש, אתה יכול להשתמש בקובץ בשם .gitignore. קובץ זה מציין אילו קבצים וספריות Git לא צריך לאינדקס.
קביעה אילו קבצים לכלול ב-.gitignore יכולה להיות אתגר, במיוחד אם אתה חדש בפיתוח. גלה אילו קבצים עליך להוסיף ל-gitignore שלך עבור זרימת עבודה חלקה יותר של Git.
יצירת קובץ .gitignore
כדי לקובץ .gitignore שלך להיות השפעה כלשהי, עליך לאתחל את Git בפרויקט שלך.
אתה יכול לאתחל את Git על ידי הפעלת הפקודה למטה בטרמינל שלך:
git init
פקודה זו יוצרת מאגר Git חדש עבור הפרוייקט שלך, בתיקייה משנה ".git" מוסתרת המכילה את כל הקבצים והספריות הדרושים לה לשליטה בגירסה של הפרוייקט שלך.
כדי להפעיל פקודה זו, אתה חייב Git מותקן במערכת שלך.
לאחר מכן, צור את קובץ ה-gitignore שלך על ידי הפעלת הפקודה למטה:
לגעת.gitignore
הפעלת הפקודה למעלה יוצרת קובץ חדש, ".gitignore" בספרייה הנוכחית שלך. אתה יכול לא לכלול קובץ מ-Git על ידי הוספת שם הקובץ או נתיב הקובץ (אם הקובץ נמצא בספרייה אחרת מהקובץ
.gitignore קוֹבֶץ).Git לא צריך לעקוב אחר כל קובץ בפרויקט שלך, ומעקב אחר קבצים מסוימים יכול להוביל לבעיות בלתי צפויות. אלו הם חלק מהקבצים שאתה צריך להוסיף ל-.gitignore שלך.
1. קבצי תצורה
קובצי תצורה מאחסנים הגדרות ופרמטרים אחרים שהיישומים שלך משתמשים בהם כדי להגדיר ולהתאים אישית את ההתנהגות שלהם. קבצים אלה מאחסנים לעתים קרובות מחרוזות חיבור למסד נתונים, מפתחות API ומידע רגיש אחר שאסור לך לחשוף במאגר Git שלך.
אם אתה כולל קובצי תצורה במאגר שלך, כל מי שיכול לגשת אליו יוכל לראות את תוכנם. זה עשוי לכלול מידע רגיש, שעלול להוביל לפרצות אבטחה ולבעיות אחרות.
כדי לא לכלול קובצי תצורה ממאגר Git שלך, הוסף שמות קבצים או שמות תיקיות ספציפיים למאגר שלך .gitignore קוֹבֶץ.
לדוגמה, אתה יכול להוסיף את השורה למטה לשורה שלך .gitignore קובץ להתעלם א .env קוֹבֶץ.
.env
2. בניית חפצים
חפצי בנייה הם הקבצים המלוקטים או שנוצרו כאשר אתה בונה את הפרויקט שלך. קבצים אלה חיים בדרך כלל ב- a "יַעַד" אוֹ "לִבנוֹת" מַדרִיך.
חפצי בנייה יכולים לכלול מחלקות Java קומפילציה, קבצי JAR, קבצי WAR, קבצים בינארים, חבילות הפצה, דוחות, קובצי יומן ואחרים שנוצרו במהלך תהליך הבנייה.
זה בדרך כלל נוהג טוב לא לכלול חפצי בנייה ממאגר Git שלך מכיוון שהם יכולים להיות גדולים מאוד. הם עשויים גם להיות פחות ניידים מקובצי המקור שלך, רלוונטיים רק לסביבה ספציפית. הכללת אותם במאגר שלך יכולה לנפח את גודל המאגר שלך ולהפוך אותו לאיטי יותר לשכפול ולעבוד איתו.
כדי לא לכלול חפצי בנייה ממאגר Git שלך, הוסף את "יַעַד/" אוֹ "לִבנוֹת/" ספרייה שלך .gitignore קוֹבֶץ.
לדוגמה:
# .gitignore
יַעַד/
לִבנוֹת/
3. קבצי סביבת פיתוח משולבים
קבצי סביבת פיתוח משולבת (IDE) הם קובצי תצורה, מטא נתונים של פרויקט וקבצים אחרים שנוצרים על ידי ה-IDE שלך בעת יצירת או פתיחת פרויקט. קבצים אלה ספציפיים לכל IDE. ה-IDE שלך משתמש בקבצים אלה כדי להגדיר את הגדרות הפרויקט.
קבצים אלה מיותרים לבנייה או הפעלת היישום שלך ולעתים קרובות עלולים לגרום לבעיות אם הם מחויבים למאגר Git משותף. לדוגמה, אנשים שונים בצוות שלך עשויים להשתמש ב-IDEs או גרסאות שונות, וביצוע קבצים ספציפיים ל-IDE עלולה לגרום להתנגשויות מיזוג ולהקשות על שיתוף הפעולה בפרויקט.
מכיוון שקבצים אלה הם ספציפיים ל-IDE, הקבצים שיש לכלול בקובץ שלך .gitignore הקובץ יהיה תלוי ב-IDE שלך. הנה המלצות .gitignore של GitHub עבור כמה IDEs פופולריים. אתה יכול לחפש את ה-IDE הרצוי שלך ולהוסיף את הקבצים המתוארים שלך .gitignore קוֹבֶץ.
4. קבצי תלות וחבילה
קבצי תלות וחבילה הם קבצים המכילים מידע על התלות והחבילות המשמשות את היישום שלך. כלי בנייה שונים, כגון מנהל חבילות הצומת (npm), צור קבצים אלה.
לדוגמה, אם אתה משתמש ב-npm כדי לנהל תלות עבור פרויקט JavaScript, זה יצור "node_modules" בתיקיית השורש של הפרויקט שלך. הספרייה מכילה את כל התלות המותקנים עבור הפרויקט שלך.
ספרייה זו יכולה להפוך לגדולה מאוד, במיוחד אם לפרויקט שלך יש תלות רבות או לחלק מהתלות יש גדלי קבצים גדולים. על ידי אי הכללה של "node_modules" ממאגר Git שלך, תוכל לשמור אותה נקייה ולהקטין את גודלה.
כדי להימנע מהוספת ה"node_modules" למאגר Git שלך, הוסף את השם שלו לקובץ .gitignore שלך:
#.gitignore
node_modules/
5. קבצי מערכת הפעלה
מערכת ההפעלה שלך, וכלי מערכת אחרים, עשויים ליצור קבצים בשימוש רגיל. אלה עשויים לכלול קובצי יומן, קבצים זמניים וקבצי תצורת מערכת. דוגמה לכך היא Thumbs.db קובץ ב-Windows ובמקבילו ל-macOS, ה .DS_Store קוֹבֶץ.
זה בדרך כלל נוהג טוב לא לכלול קבצי מערכת הפעלה ממאגר Git שלך, כפי שהם ספציפיים לסביבה המקומית שלך ויכולים להיות שונים בין מחשבים והפעלה שונים מערכות.
GitHub המליץ על הנחיות .gitignore עבור חלונות, macOS, ו לינוקס.
החשיבות של בקרת גרסאות
שימוש בבקרת גרסאות יכול לשפר משמעותית את זרימת העבודה שלך ולהפחית שגיאות והתנגשויות שעלולות להתעורר בעת עבודה על בסיס קוד. עם בקרת גרסאות, אתה יכול לעקוב בקלות אחר שינויים בקוד, לסקור אותם ולשתף פעולה עם חברי הצוות בצורה חלקה.
עם זאת, עליך תמיד לא לכלול קבצים מסוימים, כגון קובצי תצורה, קבצי IDE וקבצי מערכת הפעלה. זה ישמור על גודל המאגר שלך ויבטיח שלא תדליף מידע רגיש.