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

מה גיט עושה

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

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

איך עובד גיט

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

לחלופין, אתה יכול לדחוף את המאגר המקומי git שלך לארח בחוץ, כגון GitHub.com . זה מאפשר מספר תורמים על הפרויקט כדי להיות מסוגל לבצע תכופות, מהיר התחייבויות ריפו המקומי שלהם, ולאחר מכן צרור כל אלה מחויבות מקומיות לתוך עדכון אחד למאגר המקוון. זהו אחד הדברים שהופכים את Git למהיר יותר לשימוש מאשר במערכות VCS אחרות: אתה יכול להתחייב לעיתים קרובות למאגר המקומי שלך מבלי לבזבז זמן ורוחב פס שיש להעלות לשרת לכל אחד מהם.

מקבל Git

רוב משתמשי לינוקס צריכים לקבל Git (או git-core ) זמין במאגרים סטנדרטי של הפטרו שלהם. משתמשי אובונטו יכולים להתקין אותו על ידי לחיצה כאן, או במסוף:

 sudo apt-get להתקין git-core 

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

באמצעות Git

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

 git init 

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

 # הכנס כמה טקסט לתוך קובץ חדש הד "TODO: יצירת תיעוד"> README.txt # עכשיו לספר Git כדי לעקוב אחר שינויים של קובץ זה # זה רק צריך להיעשות פעם אחת לכל קובץ (עוד # באותו רגע) git הוסף README.txt #And עכשיו שמור את המדינה למאגר Git Git להתחייב README.txt 

אתה תובא למסך העורך טקסט (בדיוק איזה עורך טקסט תלוי הפצה שלך תצורה) שבו אתה צריך להזין את כל ההערות על זה להתחייב. אלה הם בדרך כלל סיכום קצר של השינויים שחלו מאז ההתחייבות האחרונה. ברגע שאתה שומר ולצאת את עורך הטקסט ההתחייבות צריכה להסתיים בהצלחה.

למעשה, יצרנו תמונת מצב של המצב הנוכחי של הקובץ. כל שינוי נוסף (כי אתה מתחייב) יישמרו על גבי זה.

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

 # שים לב לנתיב "." להוסיף. 

ואתה יכול לבצע את כל הקבצים ידועים, השתנה בבת אחת עם

 Git להתחייב -A 

כמה אפשרויות אחרות git הפקודה שימושי כוללים:

 #Make שיבוט מלא של המאגר הקיים, כגון מאתר האינטרנט של פרוייקט שיבוט git clone (כתובת אתר, כלומר git: //github.com/github/linux-2.6.git) # הזז / שינוי שם של קובץ. זה חוסך ממך את הצורך להסיר ולהוסיף מחדש את הקובץ #if זה הועבר על ידי bash git mv (מקור) (יעד) # מחק קובץ ולהסיר מ Git repo git rm (יעד) # סניפים סניף במאגר זה סניף # יצירת ענף חדש של ענף Git Git (שם סניף חדש, כלומר "ניסיוני") מעבר מענף אחד לקופה אחרת (שם ענף, כלומר "ניסיוני") # ענף הסניף (ענף) אל העץ הנוכחי git מיזוג (ענף) 

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