כיצד למשוך שינויים מענף אחד לענף ב- Git

How Pull Changes From One Branch Another Git



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

תנאים מוקדמים

1. התקן את שולחן העבודה של GitHub
שולחן העבודה של GitHub מסייע למשתמש ב- git לבצע את המשימות הקשורות ל- git באופן גרפי. אתה יכול להוריד בקלות את המתקין האחרון של יישום זה לאובונטו מ- github.com. עליך להתקין ולהגדיר יישום זה לאחר ההורדה כדי להשתמש בו. תוכל גם לבדוק את מדריך ההתקנה של GitHub Desktop באובונטו כדי להכיר את תהליך ההתקנה כראוי.







2. צור חשבון GitHub
תדרש ליצור חשבון GitHub לבדיקת מראה המאגר המרוחק לאחר פרסום השינוי במאגר המקומי.



3. צור מאגר מקומי
עליך ליצור מאגר מקומי כדי לבדוק את הפקודות המשמשות במדריך זה.



שימוש בפקודת stash

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





סניף $ git
מאסטר קופה של $ git
סטטוס $ git

הפלט הבא יופיע לאחר ביצוע הפקודה לעיל. הפלט מראה שהמאגר מכיל שני סניפים ו- הראשי הסניף היה פעיל בתחילה. לאחר המעבר ל- לִשְׁלוֹט סניף, פלט הסטטוס מראה שהענף הנוכחי פעיל ו- index.html הקובץ אינו מסודר.



הפעל את הפקודות הבאות כדי לעקוב אחר הקובץ שלא עוקב ולבדוק שוב את סטטוס מאגר ה- git.

$ git הוסף index.html
סטטוס $ git

הפלט הבא יופיע לאחר ביצוע הפקודות שלעיל. פלט הסטטוס מראה זאת index.html הקובץ מתווסף למאגר אך צריך להתחייב.

הפעל את הפקודות הבאות ובדוק שוב את סטטוס מאגר ה- git. הפקודה 'git stash' פועלת כמו הפקודה 'git commit'. ספריית העבודה של המאגר תנוקה לאחר ביצוע פקודה זו.

$ git stash
סטטוס $ git

הפלט הבא יופיע המבצע את הפקודות שלעיל.

לאחר הפעלת פקודת stash לענף, אם משתמש git רוצה למשוך את השינויים בענף לענף אחר, ניתן לעשות זאת בקלות באמצעות הפקודה `git stash pop` הפועלת כמו הפקודה` git מיזוג`. הפעל את הפקודות הבאות כדי לעבור ל- הראשי לסניף ולמשוך את השינויים מה לִשְׁלוֹט סניף אל רָאשִׁי ענף.

$ git checkout הראשי
$ git stash pop

הפלט הבא יופיע לאחר ביצוע הפקודה למעלה המראה שהענף הנוכחי הוא רָאשִׁי וה index.html קובץ נוסף בענף זה.

הפעל את הפקודה הבאה כדי לבצע את המשימה הקודמת עם הודעת ה- commit ולבדוק שוב את הסטטוס.

$ git commit -m 'קובץ אינדקס נוסף'
סטטוס $ git

הפלט הבא יופיע לאחר ביצוע הפקודות שלעיל. פלט הסטטוס מראה שעץ העבודה נקי כעת לאחר התחייבות.

אם השינויים במאגר המקומי נדחפים למאגר המרוחק, והמאגר המרוחק נפתח מ- github.com, המאגר ייראה כמו התמונה הבאה.

שימוש בפקודת מיזוג

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

סניף $ git
מאסטר קופה של $ git
סטטוס $ git
$ git הוסף read.php
$ git commit -m 'קובץ סקריפט נוסף'

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

לאחר השלמת המשימה לעיל, אם השינויים שבוצעו ב- לִשְׁלוֹט הסניף דורש העברה אל רָאשִׁי סניף, אם כן המיזוג ניתן להשתמש בפקודה לביצוע משימה זו. ניתן להשתמש בפקודת המיזוג מהמסוף או באמצעות יישום שולחן העבודה GitHub. דרך השימוש ב- GitHub Desktop למיזוג ענפים הופיעה בחלק זה של המדריך. פתח את המאגר המקומי ב- GitHub Desktop. פתח את תיבת הדו -שיח של רשימת הסניפים על ידי לחיצה על רשימת הסניפים מ ה נוף בתפריט ובחר את רָאשִׁי סניף כענף פעיל. כעת, לחץ על התמזגו עם הסניף הנוכחי ... מ ה ענף תַפרִיט. בחר את לִשְׁלוֹט מסניף מתיבת הדו -שיח ולחץ על מיזוג המאסטר לעיקרי לחצן כדי למשוך את השינויים של לִשְׁלוֹט להסתעף לתוך הראשי ענף. אתה יכול למחוק את לִשְׁלוֹט סניף לאחר השלמת פעולת המיזוג אם הסניף אינו דורש את המאגר.

סיכום

שתי דרכים שונות למשוך את השינויים מענף אחד לענף אחר הוצגו במדריך זה באמצעות שני מאגרים מקומיים להדגמה. ה סְלִיק ו ללכת פקודות git שימשו כאן לביצוע המשימה. שולחן העבודה של GitHub שימש במדריך זה כדי להציג את הדרך למיזוג ענפים באופן גרפי.