מה ההבדל בין HEAD, עץ עבודה ואינדקס ב-Git?

Mh Hhbdl Byn Head Z Bwdh W Yndqs B Git



Git היא מערכת בקרת גרסאות מבוזרת העוקבת אחר ההבדל בין ספריית העבודה למאגר Git המקומי, בדומה בין המאגרים המקומיים של Git למרוחקים. בזמן העבודה על Git, מפתחים מתמודדים עם מספר רב של קבצים. בתחילה, הם עובדים על ספריית העבודה ואז הם מעבירים את הקבצים שלהם מספריית העבודה לאינדקס Git. לאחר מכן, הם מבצעים שינויים כדי לשמור נתונים במאגר המקומי. אז, HEAD זז עם כל התחייבות חדשה.

פוסט זה יבדיל את ה-HEAD, עץ העבודה והאינדקס ב-Git.

מה ההבדל בין עץ עבודה, HEAD ואינדקס ב-Git?

' רֹאשׁ ” הוא הפניה ייחודית המצביעה על הסניף או התחייבויות בו המשתמשים עובדים כעת. ה ' עץ עובד ” הוא אזור העבודה הנוכחי עליו עובדים המשתמשים שמכיל את כל השינויים הלא מבוימים. ואילו ' אינדקס ” הוא אזור ההיערכות בין ספריית העבודה למאגר המקומי המכיל את השינויים שיש לבצע.







איך למצוא HEAD Pointer ב-Git?

על מנת להציג את המיקום הנוכחי של HEAD, השתמש ב-' git log הפקודה יחד עם הפקודה ' -שורה אחת ' אפשרות:



$ git log --באינטרנט

הפלט שלהלן מציין שה-HEAD מצביע על ' לִשְׁלוֹט 'סניף ו' d3fd3b ' להתחייב:







איך למצוא עץ עובד ב-Git?

אם מפתחים רוצים להציג את רשימת כל השינויים שלא עוקבים מעץ העבודה, יש צורך לבצע את ' git ls-tree HEAD ' פקודה:

$ git ls-tree רֹאשׁ

לפי התפוקה המצוינת להלן:



  • העמודה הראשונה מייצגת את ההרשאות של קבצים (קריאה-כתיבה).
  • העמודה השנייה מציגה ' כֶּתֶם ”, שהוא סוג של אובייקט המייצג אובייקט בינארי גדול המשמש לאחסון התוכן של כל קובץ במאגר.
  • העמודה השלישית מכילה את מזהה ה-commit של commits של מאגר העבודה הנוכחי.
  • העמודה הרביעית מכילה את רשימת כותרות הקבצים.

איך למצוא אינדקס ב-Git?

כדי למצוא את האינדקס ב-Git, הפעל את ' git ls-files ' פקודה:

$ git ls-files

בפלט למטה:

  • ' 'דגל משמש עבור הקבצים המבויימים.
  • עמודה 1 מציינת את הקובץ chmod או הרשאות.
  • עמודה 2 מכילה את ה-SHA-hash של commits של מאגר העבודה הנוכחי.
  • באופן דומה, עמודה 3 מייצגת את האינדקס של כל הקבצים שהוא ' 0 '.
  • העמודה האחרונה מציגה את רשימת כותרות הקבצים הזמינים.

הבדלנו בין HEAD, עץ עבודה ואינדקס ב-Git.

סיכום

HEAD הוא מצביע שקובע את הסניף או התחייבות שהמשתמש עזב לאחרונה. עץ עבודה הוא מקום נוכחי בו המשתמש עובד ושומר קבצים. עם זאת, האינדקס הוא אזור הצגה של Git שבו משתמשים מבצעים שינויים חדשים. פוסט זה הדגים את ההבדל בין HEAD, עץ עבודה ואינדקס.