האם שיבוטים של שיבוט כל הענפים
סניף שיבוט Git – כיצד לשבט ענף ספציפי
סיכום:
במאמר זה אדבר כיצד לשכפל סניף ספציפי ב- Git. אני אספק הוראות והסברים שלב אחר שלב כיצד לבצע משימה זו. בנוסף, אתייחס לכמה שאלות נפוצות ואספק תשובות מפורטות על סמך החוויה האישית שלי.
נקודות מפתח:
1. הורד והתקן את ה- GIT האחרון עבור Mac מתקין: לפני שתוכל לשכפל סניף ספציפי, עליך להתקין את GIT ב- Mac שלך. בקר באתר git הרשמי והורד את המתקין האחרון עבור Mac.
2. השתמש בפקודה של שיבוט git: כדי לשכפל סניף ספציפי, אתה יכול להשתמש בפקודה של שיבוט Git ואחריו כתובת האתר של המאגר ושם הסניף.
3. בדוק את גרסת ה- GIT שלך: חשוב להבטיח שתתקין גרסה תואמת של GIT. אתה יכול לבדוק את גרסת ה- Git שלך על ידי הפעלת פקודה פשוטה בטרמינל.
שאלה 1: האם שיבוט Git שיבוט את כל הענפים?
תשובה: לא, הפקודה Clone Git אינה משופטת את כל הסניפים כברירת מחדל. זה משבט רק את הסניף שנבדק כרגע או את הסניף שצוין בפקודה.
שאלה 2: כיצד אוכל לשכפל ענף ספציפי באמצעות שיבוט git?
תשובה: כדי לשכפל סניף ספציפי באמצעות שיבוט Git, אתה יכול להוסיף את שם הענף לסוף הפקודה ככה: Git Clone
שאלה 3: האם אוכל לשכפל ענפים מרובים בבת אחת באמצעות שיבוט GIT?
תשובה: לא, שיבוט Git מאפשר לך רק לשכפל ענף אחד בכל פעם. אם ברצונך לשכפל ענפים מרובים, תצטרך להריץ את הפקודה שיבוט Git בנפרד עבור כל סניף.
שאלה 4: כיצד אוכל לעבור לסניף אחר לאחר שיבוט סניף ספציפי?
תשובה: לאחר שיבוט סניף ספציפי, אתה יכול להשתמש בפקודה של Git Checkout כדי לעבור לסניף אחר. כל שעליך לעשות הוא להריץ את Checkout
שאלה 5: האם אוכל לשכפל ענף מרוחק שאינו קיים באופן מקומי?
תשובה: כן, אתה יכול לשכפל ענף מרוחק שאינו קיים באופן מקומי. כשאתה משבט את המאגר, GIT יביא את כל הענפים מהמאגר המרוחק, כולל זה שאתה רוצה לשכפל.
שאלה 6: מה אם הסניף אני רוצה לשכפל נמחק?
תשובה: אם הסניף שאתה רוצה לשכפל נמחק, לא תוכל לשכפל אותו. וודא שהסניף עדיין קיים במאגר המרוחק לפני שאתה מנסה לשכפל אותו.
שאלה 7: האם אוכל לציין התחייבות ספציפית במקום סניף בעת השיבוט?
תשובה: כן, אתה יכול לציין התחייבות ספציפית במקום סניף בעת השיבוט. אתה צריך לספק את החשיש המתחייב במקום את שם הסניף בפקודה של שיבוט Git.
שאלה 8: האם יש מגבלות לשיבוט ענפים ספציפיים?
תשובה: אין מגבלות ספציפיות לשיבוט ענפים ספציפיים. עם זאת, וודא שיש לך את ההרשאות והגישה הדרושה לסניף שאתה רוצה לשכפל.
שאלה 9: האם ניתן לשכפל סניף ממאגר מרוחק אחר?
תשובה: כן, אפשר לשכפל סניף ממאגר מרוחק אחר. אתה רק צריך לספק את כתובת האתר של המאגר ואת שם הסניף בפקודה של שיבוט Git.
שאלה 10: כיצד אוכל לעדכן סניף משובט עם השינויים האחרונים מהמאגר המרוחק?
תשובה: כדי לעדכן סניף משובט עם השינויים האחרונים מהמאגר המרוחק, אתה יכול להשתמש בפקודה Git Pull. פשוט נווט אל מדריך המאגר המשובט והפעל את המשיכה.
סניף שיבוט Git – כיצד לשבט ענף ספציפי
הורד והתקן את ה- GIT האחרון למתקין MAC כאן.
האם שיבוטים של שיבוט כל הענפים
שינויים ב- git-clone מדריך ל
- 2.38.1 → 2.40.1 אין שינויים
- 2.38.0







10/02/22 - 2.36.1 → 2.37.7 אין שינויים
- 2.36.0







04/18/22 - 2.35.1 → 2.35.8 אין שינויים
- 2.35.0







01/24/22 - 2.32.1 → 2.34.8 אין שינויים
- 2.32.0







06/06/21 - 2.30.2 → 2.31.8 אין שינויים
- 2.30.1







02/08/21 - 2.30.0







12/27/20 - 2.29.1 → 2.29.3 אין שינויים
- 2.29.0







10/19/20 - 2.28.1 אין שינויים
- 2.28.0







07/27/20 - 2.27.1 אין שינויים
- 2.27.0







06/01/20 - 2.25.1 → 2.26.3 אין שינויים
- 2.25.0







01/13/20
בדוק את הגרסה שלך ל- Git על ידי ריצה
שֵׁם
Git -Clone – משובט מאגר לספרייה חדשה
תַקצִיר
שיבוט גיט [-תבנית =] [-l] [-s] [-no-hardlinks] [-q] [-n] [--bare] [--mirror] [-o] [-b] [-u] [--reference] [-dissociate] [--separate-git-dir] [-depth] [-[-] [-rangs] [-no-tags] [-no-tags] [-do-tags] -[no-]-מודוליות רדודות] [-[לא-]-מודולות מרחוק] [-jobs] [-sparse] [-[no-] דחיית דחייה] [-פילטר = [-גם-פילטר-מודולות]] [-] []] []] []] []] []]
תיאור
שיבוץ מאגר לספרייה שזה עתה נוצר, יוצר ענפים מעקב מרחוק עבור כל סניף במאגר המשובט (הנראה בעזרת סניף GIT-רכורות), ויוצר ובודק ענף ראשוני שמזלג מהמאגר המשובט’S סניף פעיל כרגע.
לאחר השיבוט, הגברת גט רגילה ללא טיעונים תעדכן את כל הענפים המעקבים מרחוק, ומשיכה של Git ללא טיעונים תמזג בנוסף את סניף הראשי המרוחק לסניף הראשי הנוכחי, אם בכלל (זה לא נכון כאשר ניתן “-Single-Sanch”; ראה להלן).
תצורת ברירת מחדל זו מושגת על ידי יצירת הפניות לראשי הענפים המרוחקים תחת שופטים/מרחקים/מקור ועל ידי אתחול שלט מרחוק.מָקוֹר.כתובת אתר ומרוחקת.מָקוֹר.השג את משתני התצורה.
אפשרויות
כאשר המאגר שישובק ממנו נמצא במכונה מקומית, דגל זה עוקף את מנגנון ההובלה הרגיל “git מודע” ומשבט את המאגר על ידי יצירת עותק של ראש וכל מה שמתחת לאובייקטים וספריות שופטים. הקבצים מתחת .GIT/ אובייקטים/ ספרייה קשורים לחיסכון בשטח במידת האפשר.
אם המאגר מוגדר כדרך מקומית (ה.ז., /נתיב/to/repo), זהו ברירת המחדל, ו-מקומית היא למעשה לא-אופ. אם המאגר מוגדר ככתובת אתר, אז מתעלמים מהדגל הזה (ואף פעם לא משתמשים באופטימיזציות המקומיות). ציון-לא-מקומי יעקוף את ברירת המחדל כאשר ניתן/נתיב/to/repo, באמצעות הובלת GIT הרגילה במקום זאת.
הערה: פעולה זו יכולה למירוץ עם שינוי במקביל למאגר המקור, בדומה להפעלת CP -R SRC DST תוך שינוי SRC .
–לא hardlinks
לאלץ את תהליך השיבוט ממאגר במערכת קבצים מקומית כדי להעתיק את הקבצים תחת .ספריית GIT/Objects במקום להשתמש ב- Hardlinks. זה עשוי להיות רצוי אם אתה מנסה לבצע גיבוי של המאגר שלך.
כאשר המאגר לשיבוט נמצא במחשב המקומי, במקום להשתמש בקישורים קשים, הגדרה אוטומטית .GIT/אובייקטים/מידע/חלופות לשתף את האובייקטים עם מאגר המקור. המאגר המתקבל מתחיל ללא שום מושא משלו.
הערה: זהו פעולה מסוכנת אולי; לַעֲשׂוֹת לֹא השתמש בו אלא אם כן אתה מבין מה זה עושה. אם אתה משבט את המאגר שלך באמצעות אפשרות זו ואז מחק סניפים (או השתמש בכל פקודה אחרת של GIT שהופכת את כל ההתחייבות הקיימת ללא הפניה) במאגר המקור, חלק מהאובייקטים עלולים להפוך ללא הפניה (או משתלשלים). אובייקטים אלה עשויים להיות מוסרים על ידי פעולות GIT רגילות (כגון התחייבות GIT) שקוראים אוטומטית לתחזוקת GIT -Auto . (ראו תחזוקה גט [1].) אם האובייקטים הללו יוסרו ומפנים אותם על ידי המאגר המשובט, אז המאגר המשובט יושחת.
שימו לב כי הפעלת git מחדש ללא אפשרות -מקומית במאגר משובט עם -משותפת תעתיק אובייקטים ממאגר המקור לחבילה במאגר המשובט, ותסיר את החיסכון במרחב הדיסק של המשופט -משופץ . עם זאת, זה בטוח להפעיל את Git GC, המשתמש באפשרות -מקומית כברירת מחדל.
אם אתה רוצה לשבור את התלות של מאגר משובט -משותף במאגר המקור שלו, אתה יכול פשוט להריץ את Git Repack -a כדי להעתיק את כל האובייקטים ממאגר המקור לחבילה במאגר המשובט.
–התייחסות [-אם-יכולת]
אם מאגר ההתייחסות נמצא במחשב המקומי, הגדרת אוטומטית .GIT/אובייקטים/מידע/חלופות כדי להשיג אובייקטים ממאגר ההתייחסות. שימוש במאגר קיים שכבר כחלופה ידרוש להעתיק פחות אובייקטים מהמאגר המשובט, להפחית את הרשת ועלויות האחסון המקומיות. בעת השימוש ב–reference-if-sable, מדלג על ספרייה לא קיימת באזהרה במקום להפיל את השיבוט.
הערה: עיין בהערה לאפשרות -משותפת, וגם את האפשרות -דיסוציאציה.
–להתנתק
לווה את האובייקטים ממאגרי הפניה שצוינו עם אפשרויות -התייחסות רק כדי להפחית את העברת הרשת, ולהפסיק את ההלוואות מהם לאחר ביצוע שיבוט על ידי ביצוע עותקים מקומיים נחוצים של חפצים מושאלים. ניתן להשתמש באפשרות זו גם בעת שיבוט מקומי ממאגר שכבר לווה אובייקטים ממאגר אחר – המאגר החדש ישאל אובייקטים מאותו מאגר, וניתן להשתמש באפשרות זו כדי להפסיק את ההלוואות.
פועל בשקט. ההתקדמות לא מדווחת לזרם השגיאות הסטנדרטי.
לרוץ באופן מילולי. אינו משפיע על הדיווח על מצב ההתקדמות לזרם השגיאות הסטנדרטי.
מצב ההתקדמות מדווח על זרם השגיאות הסטנדרטי כברירת מחדל כאשר הוא מחובר למסוף, אלא אם כן -קוויט מצוין. דגל זה מכריח את מצב ההתקדמות גם אם זרם השגיאות הסטנדרטי אינו מופנה למסוף.
העבירו את המחרוזת הנתונה לשרת בעת תקשורת באמצעות פרוטוקול גרסה 2. המחרוזת הנתונה אסור להכיל תו NUL או LF. השרת’S טיפול באפשרויות שרת, כולל לא ידועות, הוא ספציפי לשרת. כאשר ניתנים מרובים-server-option =.
לא מתבצע בדיקת הראש לאחר השלמת השיבוט.
נכשל אם מאגר המקור הוא מאגר רדוד. ה שיבוט.דחיית דחייה ניתן להשתמש במשתנה תצורה כדי לציין את ברירת המחדל.
לעשות חָשׂוּף מאגר GIT. כלומר, במקום ליצור ולהניח את קבצי הניהול ב /.Git, הפוך את עצמו ל- $ git_dir . ברור שזה מרמז על-לא בדיקה מכיוון שאין לאן לבדוק את עץ העבודה. כמו כן, ראשי הענפים בשלט מרוחקים מועתקים ישירות לראשי הענפים המקומיים המתאימים, מבלי למפות אותם לשופטים/מרחוק/מקור/ . כאשר משתמשים באפשרות זו, לא נוצרים ענפי מעקב מרחוק ולא משתני התצורה הקשורים.
השתמש בבדיקה דלילה, כאשר תחילה נוכחים קבצים בספריה של Toplevel. ניתן להשתמש בפקודה של git-sparse-checkout [1] כדי לגדל את ספריית העבודה לפי הצורך.
השתמש בתכונת השיבוט החלקית ובקש שהשרת ישלח תת -קבוצה של אובייקטים הניתנים להשגה בהתאם לסינון אובייקט נתון. בעת שימוש -פילטר, המסופק משמש למסנן השיבוט החלקי. לדוגמה, -filter = blob: אף אחד לא יסנן את כל הכתמים (תוכן הקבצים) עד שצריך על ידי Git. כמו כן, -פילטר = blob: limit = יסנן לפחות את כל הגודל בגודל . לפרטים נוספים על מפרטי הסינון, עיין באפשרות-פילטר ברשימת git-rev [1].
החל גם את מסנן השיבוט החלקי על כל תת -מודולות במאגר. דורש-פילטר ו-סימון-סובממודולות . ניתן להפעיל את זה כברירת מחדל על ידי הגדרת השיבוט.אפשרות filtersubmodules config.
הגדר מראה של מאגר המקור. זה מרמז -חשוף . בהשוואה ל-חשופה,-Mirror לא רק ממפה סניפים מקומיים של המקור לסניפים מקומיים של היעד, הוא ממפה את כל השופטים (כולל ענפי מעקב מרחוק, הערות וכו ‘.) ומגדיר תצורת RefSpec כך שכל השופטים הללו מוחלפים על ידי עדכון מרחוק של GIT במאגר היעד.
במקום להשתמש בשם המרוחק ממקור כדי לעקוב אחר מאגר הזרם במעלה הזרם, השתמש . עוקף שיבוט.שם defaultRemotename מהתצורה.
במקום להפנות את הראש החדש שנוצר לסניף שהצביע על ידי המאגר המשובט’ראשו, הצביע על סניף במקום. במאגר שאינו חשוף, זהו הסניף שייבדק. –סניף יכול גם לקחת תגיות ולנתק את הראש באותה התחייבות במאגר המתקבל.
כאשר ניתן לו, והמאגר לשיבוט ממנו ניתן לגשת באמצעות SSH, זה מציין נתיב שאינו מפתח לריצת הפקודה בקצה השני.
ציין את הספרייה שממנה ישתמשו בתבניות; (עיין בסעיף “ספריית התבנית” של Git-init [1].)
הגדר משתנה תצורה במאגר החדש שנוצר; זה נכנס לתוקף מיד לאחר אתחול המאגר, אך לפני שההיסטוריה המרוחקת מובלת או כל קבצים נבדקים. המפתח הוא באותה פורמט כצפוי על ידי Git-Config [1] (ה.ז., הליבה.EOL = נכון). אם ניתנים ערכים מרובים עבור אותו מפתח, כל ערך ייכתב לקובץ config. זה הופך את זה לבטוח, למשל, להוסיף REFSPECs נוספים לשלט המוצא שלט המוצא.
בשל מגבלות היישום הנוכחי, משתני תצורה מסוימים אינם נכנסים לתוקף עד לאחר ההחברה הראשונית והקופה הראשונית. משתני תצורה הידועים שהם לא נכנסים לתוקף הם: מרוחקים..מראה ומרוחקת..תגופט . השתמש באפשרויות המתאימות-Mirror ו–No-Tags במקום זאת.
ליצור רָדוּד שיבוט עם היסטוריה קטוע למספר ההתחייבויות שצוין. מרמז-סניף-סינגל אלא אם כן ניתן-סניף לא-סינגל כדי להביא את ההיסטוריה בסמוך לקצות כל הענפים. אם אתה רוצה לשכפל תת-מודולים ברדוד, לעבור גם-סובלים-דלע .
צור שיבוט רדוד עם היסטוריה לאחר הזמן שצוין.
צור שיבוט רדוד עם היסטוריה, למעט התחייבויות שניתן להגיע אליה מסניף או תג מרוחק שצוין. ניתן לציין אפשרות זו מספר פעמים.
שיבט רק את ההיסטוריה המובילה לקצה של סניף יחיד, שצוין על ידי אפשרות -Branch או שלט הסניף הראשי’S נקודות ראש ב. עוד מביא למאגר המתקבל יעדכן רק את ענף המעקב המרוחק לסניף אפשרות זו שימשה לשיבוט הראשוני. אם הראש בשלט לא הצביע על שום סניף כאשר נוצר שיבוט-סניף סינגל, לא נוצר סניף מרחוק מרחוק.
דוֹן’T שיבט כל תגים וקבע שלט מרוחק..TAGOPT =-ללא תגי בתצורה, מבטיחים כי פעולות עתידיות של GIT ו- GIT ניצחו’לא עקוב אחר תגיות. אחיזה מפורשת לאחר מכן עדיין יעבדו, (ראה Git-Fetch [1]).
ניתן להשתמש בשילוב עם-סניף-סינגל כדי לשכפל ולתחזק ענף ללא הפניות מלבד ענף משובט יחיד. זה שימושי ה.ז. כדי לשמור על שיבוטים מינימליים של סניף ברירת המחדל של מאגר כלשהו לאינדקס חיפוש.
–recurse-submodules [=]
לאחר יצירת השיבוט, אתחול ושתות משובטים בתוכו בהתבסס על PathSpec המסופק. אם לא מסופק PathSpec, כל תת -המודולות מאתחל ומשבט. אפשרות זו ניתנת למספר פעמים עבור PathSpecs המורכבים ממספר רשומות. לשיבוט המתקבל יש מודול.סט פעיל ל- PathSpec המסופק, או “.”(כלומר כל תת -המודולות) אם לא מסופק PathSpec.
תת -מודולות מאתחל ומשובטים באמצעות הגדרות ברירת המחדל שלהן. זה שווה להפעלת עדכון תת -מודול git -init -recursive מיד לאחר סיום השיבוט. לאפשרות זו מתעלמת אם למאגר המשובט אין צורה/קופה (i.ה. אם ניתן לעשות זאת -לא ניתן לבדוק / -n, -חשוף או -mirror)
–[no-]-מודולות רדודות
כל תת -המודולות המשובטות יהיו רדודות עם עומק של 1.
כל תת -המודולים המשובטים ישתמשו בסטטוס המודול’S סניף מעקב מרחוק לעדכן את תת-מודול, ולא את הפרשוף העל’S הקליט SHA-1. שווה ערך לעבור -remote לעדכון תת -מודול של GIT .
במקום להציב את המאגר המשובט במקום בו הוא אמור להיות, מקם את המאגר המשובט בספריה שצוינה, ואז צור קישור סמלי של מערכת הקבצים-אגנוסטית לשם. התוצאה היא שמאגר GIT ניתן להפריד מעץ עבודה.
מספר תת -המודולות שהושגו בו זמנית. ברירת מחדל למתן המודדה.אפשרות Fetchjobs.
המאגר (יתכן מרוחק) שישובק ממנו. עיין בסעיף כתובות האתר של GIT להלן למידע נוסף על ציון מאגרים.
שמו של ספרייה חדשה שישבטה לתוכו. החלק “האנושי” של מאגר המקור משמש אם לא ניתן במפורש במפורש (ריפו עבור/נתיב/אל/repo.Git ו- Foo for Host.xz: foo/.גיט). שיבוט לספרייה קיימת מותר רק אם הספרייה ריקה.
לפני שתשיג מהשלט, הביאו צרור מהנתון והפרק את הנתונים למאגר המקומי. השופטים בצרור יאוחסנו תחת מרחב השמות הנסתר/צרור/*. אפשרות זו אינה תואמת-מעמיק,-דלע-סינק, ו-להקל על .
כתובות כתובות GIT
באופן כללי, כתובות אתרים מכילות מידע על פרוטוקול ההובלה, כתובת השרת המרוחק והנתיב למאגר. תלוי בפרוטוקול ההובלה, חלק ממידע זה עשוי להיעדר.
GIT תומך בפרוטוקולי SSH, GIT, HTTP ו- HTTPS (בנוסף, FTP ו- FTPs יכולים לשמש לצורך הבאת, אך זה לא יעיל ומושקע; אל תשתמש בו).
התחבורה הילידית (i.ה. git: // url) אין אימות ויש להשתמש בו בזהירות ברשתות לא מאובטחות.
ניתן להשתמש בתחביר הבאים איתם:
- ssh: // [user@] מארח.xz [: יציאה]/נתיב/to/repo.git/
- git: // מארח.xz [: יציאה]/נתיב/to/repo.git/
- http [s]: // מארח.xz [: יציאה]/נתיב/to/repo.git/
- ftp [s]: // מארח.xz [: יציאה]/נתיב/to/repo.git/
תחביר דמוי SCP ניתן להשתמש גם בפרוטוקול SSH:
- [משתמש@] מארח.xz: נתיב/to/repo.git/
תחביר זה מוכר רק אם אין חתכים לפני המעי הגס הראשון. זה עוזר להבדיל מסלול מקומי המכיל מעי גס. לדוגמא את הנתיב המקומי foo: ניתן לציין סרגל כנתיב מוחלט או ./foo: סר.
פרוטוקולי SSH ו- GIT תומכים בנוסף ~ הרחבת שם המשתמש:
- ssh: // [user@] מארח.xz [: יציאה]/~ [משתמש]/נתיב/to/repo.git/
- git: // מארח.xz [: יציאה]/~ [משתמש]/נתיב/to/repo.git/
- [משתמש@] מארח.xz:/~ [משתמש]/path/to/repo.git/
עבור מאגרים מקומיים, הנתמכים גם על ידי GIT באופן טבעי, ניתן להשתמש בתחביבים הבאים:
- /path/to/repo.git/
- קובץ: /// נתיב/to/repo.git/
שני התחביבים הללו שקולים ברובם, למעט שהראשונים מרמזים -אפשרות מקומית.
שיבוט גיט, Git להביא וכן משיכה גיט, אבל לא Git Push, יקבל גם קובץ צרור מתאים. ראה Git-Bundle [1].
כאשר גיט לא’לא יודע כיצד להתמודד עם פרוטוקול הובלה מסוים, הוא מנסה להשתמש בעוזר מרוחק מרוחק, אם קיים. כדי לבקש במפורש עוזר מרוחק, ניתן להשתמש בתחביר הבא:
היכן יכול להיות נתיב, שרת ונתיב, או מחרוזת דמוי כתובת URL שרירותית המוכרת על ידי העוזר המרוחק הספציפי שמופעל. ראו פרטים על Gitremote-Helpers [7].
אם יש מספר גדול של מאגרים מרחוק בשם דומה, ואתה רוצה להשתמש בפורמט אחר עבורם (כך שכתובות האתר בהן אתה משתמש ייכתבו מחדש לכתובות כתובות אתרים), אתה יכול ליצור קטע תצורה של הטופס:
[url “”] במקום זאת =
לדוגמה, עם זה:
[url "git: // git.מנחה.xz/"] במקום = מארח.xz:/path/to/במקום זאת = עבודה:
כתובת אתר כמו “עבודה: repo.Git “או כמו” מארח “.xz:/path/to/repo.Git “ייכתב מחדש בכל הקשר שלוקח כתובת אתר להיות” git: // git.מנחה.xz/repo.git “.
אם ברצונך לשכתב כתובות אתרים לדחיפה בלבד, אתה יכול ליצור קטע תצורה של הטופס:
[url “”] pushinsteadof =
לדוגמה, עם זה:
[url "ssh: // דוגמה.org/"] pushinsteadof = git: // דוגמה.org/
כתובת אתר כמו “git: // דוגמה.org/path/to/repo.git “ייכתב מחדש ל-” ssh: // דוגמה.org/path/to/repo.git “לדחיפות, אך משיכות עדיין ישתמשו בכתובת האתר המקורית.
דוגמאות
- שיבוט מהזרם:
$ git שיבוט git: // git.גַרעִין.org/pub/scm/. /לינוקס.git my-linux $ cd my-linux $ make
$ git Clone -l -s -n . ../העתק $ CD ../העתק $ Git Show-Sanch
שיבוט $ git -הפניה /גיט /לינוקס.git \ git: // git.גַרעִין.org/pub/scm/. /לינוקס.git \ my-linux $ cd my-linux
שיבוט $ git - -L -L/Home/Proj/.Git/Pub/SCM/Proj.גיט
תְצוּרָה
כל מה שמתחת לשורה זו בסעיף זה נכלל באופן סלקטיבי מהתיעוד Git-Config [1]. התוכן זהה למה’נמצא שם:
init.Templatedir
ציין את הספרייה שממנה יועתקו תבניות. (עיין בסעיף “ספריית התבנית” של Git-init [1].)
מאפשר לעקוף את שם סניף ברירת המחדל E.ז. בעת אתחול מאגר חדש.
שם השלט היוצר בעת שיבוט מאגר. ברירת מחדל למקור, וניתן לבטל אותה על ידי העברת האפשרות-שורת הפקודה המקורית ל- Git-Clone [1].
דחה לשיבוט מאגר אם הוא רדוד, ניתן לעקוף אותו על ידי אפשרות מעבר-דואר-נזקה בשורת הפקודה. ראה Git-Clone [1]
אם ניתן מסנן שיבוט חלקי (ראה-פילטר ברשימת git-rev [1]) ו–סיווג-סובמוליות משמש, החל גם את המסנן על תת-מודולות.
גיט
חלק מסוויטת Git [1]
סניף שיבוט Git – כיצד לשבט ענף ספציפי

בולאג’י איודג’י
בניגוד למערכות בקרת גרסאות ריכוזיות ישנות יותר כמו SVN ו- CVS, GIT מופץ. לכל מפתח יש את ההיסטוריה המלאה והשליטה בקוד שלהם באופן מקומי או מרחוק. הם יכולים גם לגשת או לתפעל כמה חלקים מהקוד שכן הם רואים שמתאימים ממיקומים שונים.
מאז לינוס טורוואלדס (היוצר המפורסם של גרעין מערכת ההפעלה של לינוקס) יצר את GIT בשנת 2005 לפיתוח גרעיני לינוקס, הוא הפך למערכת בקרת הגרסאות המודרנית הנפוצה ביותר בעולם.
במאמר זה, אכיר לך את זרימות העבודה של שיבוט Git ו- Git סניף ואראה לך כיצד תוכל לשכפל ענף ספציפי על סמך הצרכים שלך. בואו נתחיל! ?
תנאים מוקדמים
- ידע בסיסי בטרמינל
- יכולת להקליד פקודות בטרמינל
- Git מותקן (אני עדיין אראה לך איך)
- חשבון GitHub
- חיוך על הפנים שלך (הניח את חבר החיוך הזה ?)
מבוא מהיר ל- GIT ו- GitHub
גיט היא מערכת בקרת גרסאות מופצת שנועדה לעקוב אחר שינויים בפרויקט (קוד) בפיתוח תוכנה. זה נועד לאכוף תיאום, שיתוף פעולה, מהירות ויעילות בקרב המפתחים.
Github, מצד שני, הוא שירות אירוח מבוסס אינטרנט לבקרת גרסאות באמצעות GIT. הוא מציע את כל בקרת הגרסאות המופצת ופונקציונליות ניהול קוד המקור של GIT כמו גם הוספת תכונות נוספות לקוד מחשב.
כיצד להתקין את GIT ב- Windows
הורד והתקן את ה- GIT האחרון להתקנת Windows כאן.
כיצד להתקין את GIT ב- Linux
להלן הפקודות המבוססות על Distro Linux שלך:
דביאן או אובונטו
sudo apt-get עדכון sudo apt-get התקנה git פדורה
sudo dnf התקן git סנטוס
sudo yum התקן git Arch Linux
sudo pacman -sy git ג’נטו
Sudo Emerge-Ask-Verbose dev-VCS/Git כיצד להתקין את GIT ב- Mac
הורד והתקן את ה- GIT האחרון למתקין MAC כאן.
או שתוכל להקליד פקודה זו:
Brew התקנה git עכשיו לאחר שהתקנו את Git, בואו נעבור להדרכה.
מבוא לשיבוט גיט
GIT מאפשר לך לנהל ולגרש את הפרויקט / ים שלך ב”מאגר “. מאגר זה מאוחסן בשירות אירוח מבוסס אינטרנט לבקרת גרסאות, כמו Github.
לאחר מכן תוכל לשכפל את המאגר הזה למכונה המקומית שלך ולהיות את כל הקבצים והסניפים באופן מקומי (אני אסביר עוד בקרוב על סניפים).

לדוגמה, אתה יכול לשכפל את המאגר של FreeCodecamp עם SSH Like:
Git Clone [email protected]: freecodecamp/freecodecamp.גיט מבוא לסניפי GIT
כשאתה עובד על פרויקט, סביר להניח שיהיו לך תכונות שונות. ותורמים מרובים יעבדו על פרויקט זה ותכונותיו.
סניפים מאפשרים לך ליצור “מגרש משחקים” עם אותם קבצים בסניף המאסטר. אתה יכול להשתמש בסניף זה כדי לבנות תכונות עצמאיות, לבחון תכונות חדשות, לבצע שינויים בשבירה, ליצור תיקונים, לכתוב מסמכים או לנסות רעיונות מבלי לשבור או להשפיע על קוד הייצור. כשתסיים, אתה ממזג את הסניף לסניף האב ההפקה.
הסתעפות היא מושג ליבה ב- GIT המשמש גם ב- GitHub לניהול זרימות עבודה של גרסאות שונות של פרויקט אחד. סניף המאסטר הוא תמיד סניף ברירת המחדל במאגר שנחשב לרוב “ייצור ופריסה קוד”. ניתן ליצור סניפים חדשים כמו סיסמה ללא סיסמה או REFACTOR-SINGUP-UX מסניף המאסטר.

כיצד לשבט את סניפי GIT
אמנם אתה יכול לשכפל מאגרים עם פקודת השיבוט של GIT, קח בחשבון שזה משבט את הענף והראש המרוחק . בדרך כלל זה מאסטר כברירת מחדל וכולל את כל שאר הסניפים במאגר.
אז כשאתה משבט מאגר, אתה משכפל את המאסטר ואת כל הסניפים האחרים. המשמעות היא שתצטרך לבדוק סניף אחר בעצמך.
נניח שהמשימה שלך בפרויקט היא לעבוד על תכונה כדי להוסיף אימות ללא סיסמה ללוח המחוונים של המשתמש. ותכונה זו נמצאת בסניף Auth ללא סיסמה.
אתה באמת לא צריך את סניף הראשי מכיוון ש”סניף התכונות “שלך ימזג למאסטר אחר כך. איך אם כן אתה משבט את סניף ה- Auth ללא סיסמה זה מבלי להביא את כל הסניפים האחרים עם “חבורה של קבצים שאתה לא צריך”?
יצרתי את מאגר הדגימה הזה כדי להסביר זאת. מאגר זה מקיים בלוג פשוט שנבנה עם NextJs ויש לו ארבעה סניפי דמה:
- לִשְׁלוֹט
- dev
- הַצָגָה
- ללא סיסמה-Auth
ב- NextJs, כל קובץ בתוך דפי התיקיה/API ממופה לנתיב/API/* ויתייחס אליו כאל נקודת קצה של API במקום לדף . במאגר שלנו יצרתי ממשקי API שונים של דמה בספריה זו כדי להפוך את כל הסניף לשונה.
סניף המאסטר מחזיק את הקובץ דפים/API/שלום.JS ואילו Auth ללא סיסמה מחזיק את הקובץ דפים/API/Auth.JS. כל קובץ פשוט מחזיר תגובת טקסט דמה. ראה כאן תגובת API של Hello API (עם הודעה מיוחדת עבורך ?).
בואו נשפך את המאגר:
Git Clone [email protected]: bolajiayodeji/nextjs-blog.גיט זה נותן לנו גישה לכל הסניפים במאגר זה ותוכלו לעבור בקלות בין כל אחד מהם לראות כל גרסה לבין הקבצים שלה.
סניף גיט -א 
תוהה איפה מרחוק/מקור/.. סניפים הגיעו מ?
כשאתה משבט מאגר, אתה מושך נתונים ממאגר באינטרנט או משרת פנימי המכונה מְרוּחָק. המילה מקור היא כינוי שנוצר על ידי ה- GIT שלך כדי להחליף את כתובת האתר המרוחקת (אתה יכול לשנות או לציין כינוי אחר אם תרצה).
אלה מרחוק/מקור/.. סניפים מכוונים אותך חזרה למאגר המקור ששיבטת מהאינטרנט כך שתוכל עדיין לבצע משיכה/דחיפה מהמקור.

אז כשאתה משבט את המאסטר למכונה שלך, Remostes/Origin/Master הוא סניף הראשי המקורי באינטרנט, והמאסטר נמצא במחשב המקומי שלך. אז תמשוך/לדחוף ממרחקים/מקור/מאסטר .
לסיכום מְרוּחָק היא כתובת האתר שמצביעה עליך על המאגר באינטרנט בזמן מָקוֹר הוא כינוי לכתובת אתר מרוחקת זו.

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


אפשרות שנייה
Git Clone-Branch-Single-Sanp


אם אתה מפעיל דפי תקליטור/ממשק API תמצא את המחבר.קובץ JS בסניף Athless-Auth ללא סיסמה כצפוי מההגדרה הקודמת.
סיכום
יתכן שנגמר לך אינטרנט או שטח אחסון אבל אתה צריך לעבוד על משימה בסניף ספציפי. או שתרצה לשכפל סניף ספציפי עם קבצים מוגבלים מסיבות שונות. למרבה המזל, GIT מספקת לך את הגמישות לעשות זאת. לכופף את השרירים שלך ונסה את זה, יש הרבה יותר “גיט” ללמוד.
אחד בכל פעם, כן? ✌?
האם שיבוטים של שיבוט כל הענפים

הפקודה Clone Git משמשת ליצירת עותק של מאגר או סניף ספציפי בתוך מאגר.
GIT היא מערכת בקרת גרסאות מופצת. למקסם את היתרונות של מאגר מלא במכונה שלך על ידי שיבוט.
מה עושה שיבוט גיט?
Git Clone https: // github.com/github/אימונים.גיט
כשאתה משבט מאגר, אתה לא מקבל קובץ אחד, כמו שאתה יכול במערכות בקרת גרסאות ריכוזיות אחרות. על ידי שיבוט עם GIT, אתה מקבל את כל המאגר – כל הקבצים, כל הסניפים וכל התחייבות.
שיבוט מאגר נעשה בדרך כלל רק פעם אחת, בתחילת האינטראקציה שלך עם פרויקט. ברגע שמאגר כבר קיים בשלט מרוחק, כמו ב- GitHub, אז היית משבט את המאגר הזה כדי שתוכל לקיים איתו אינטראקציה באופן מקומי. לאחר שיבטת מאגר, לא תצטרך לשכפל אותו שוב כדי לבצע פיתוח רגיל.
היכולת לעבוד עם כל המאגר פירושה שכל המפתחים יכולים לעבוד בצורה חופשית יותר. מבלי להיות מוגבל על ידי אילו קבצים אתה יכול לעבוד, אתה יכול לעבוד על סניף תכונות כדי לבצע שינויים בבטחה. אז את \ ה יכול \ ה:
- מאוחר יותר השתמש ב- Git Push כדי לשתף את הסניף שלך עם המאגר המרוחק
- פתח בקשת משיכה כדי להשוות בין השינויים עם משתפי הפעולה שלך
- בדוק ופריסה לפי הצורך מהסניף
- להתמזג לסניף הראשי.
כיצד להשתמש בשיבוט Git
שימושים ואפשרויות נפוצות לשיבוט GIT
- GIT Clet.
- Git Clone -Mirror: משופט מאגר אך ללא יכולת לערוך אף אחד מהקבצים. זה כולל את השופטים, או סניפים. יתכן שתרצה להשתמש בזה אם אתה מנסה ליצור עותק משני של מאגר בשלט נפרד ואתה רוצה להתאים לכל הסניפים. זה עשוי להתרחש במהלך התצורה באמצעות שלט חדש לאירוח GIT שלך, או בעת שימוש ב- GIT במהלך בדיקה אוטומטית.
- Git Clone-Single-Sanch: Clone רק סניף יחיד
- Git Clone -Sparse: במקום לאכלס את ספריית העבודה עם כל הקבצים במתחייבים הנוכחיים, רק אכלס את הקבצים הקיימים בספריית השורש. זה יכול לעזור בביצועים בעת שיבוט מאגרים גדולים עם ספריות ותת-ספריות רבות.
- `שיבוט git-עיקור-סובמוליות [=
אתה יכול לראות את כל האפשרויות הרבות עם שיבוט GIT בתיעוד של GIT-SCM.
דוגמאות לשיבוט גיט
השימוש הנפוץ ביותר בשיבוט הוא פשוט לשבט מאגר. זה נעשה רק פעם אחת, כשאתה מתחיל לעבוד על פרויקט, והיה עוקב אחר התחביר של שיבוט Git [url] .
גיט שיבוט סניף
Git Clone-Single-Sanch: כברירת מחדל, Git Clone תיצור סניפי מעקב מרחוק לכל הענפים שנמצאים כיום בשלט המשובט. הסניף המקומי היחיד שנוצר הוא סניף ברירת המחדל.
אבל, אולי משום מה תרצה רק קבלו סניף מעקב מרחוק לסניף ספציפי אחד, או שיבט סניף אחד אשר לא סניף ברירת המחדל. שני הדברים האלה קורים כשאתה משתמש-סניף-סינגל עם שיבוט Git .
זה ייצר שיבוט שיש בו רק התחייבויות שנכללו בקו ההיסטוריה הנוכחי. המשמעות היא ששום סניפים אחרים לא ישובטו. באפשרותך לציין סניף מסוים לשיבוט, אך סניף ברירת המחדל, בדרך כלל עיקרי, ייבחר כברירת מחדל.
כדי לשכפל ענף אחד ספציפי, השתמש:
Git Clet
שיבוט רק סניף אחד אינו מוסיף יתרונות אלא אם כן המאגר גדול מאוד ומכיל קבצים בינאריים שמאט את ביצועי המאגר. הפיתרון המומלץ הוא לייעל את הביצועים של המאגר לפני שתסתמך על אסטרטגיות שיבוט סניפים בודדות.
שיבוט גיט עם SSH
תלוי איך אתה מאמת עם השרת המרוחק, תוכל לבחור לשכפל באמצעות SSH.
אם תבחר לשכפל עם SSH, היית משתמש בנתיב SSH ספציפי למאגר במקום בכתובת אתר. בדרך כלל, מפתחים מאומתים עם SSH מרמת המכונה. המשמעות היא שסביר להניח שתשכפל עם HTTPS או עם SSH – לא תערובת של שניהם עבור המאגרים שלך.
- סניף GIT: זה מציג את הסניפים הקיימים במאגר המקומי שלך. אתה יכול גם להשתמש בסניף Git [שם Banch] כדי ליצור סניף מהמיקום הנוכחי שלך, או סניף Git-הכל כדי לראות את כל הסניפים, הן המקומיים במחשב שלך, והן בסניפי המעקב המרוחקים המאוחסנים מהמשוך האחרון או Git מהמרחוק.
- Git Pull: מעדכן את סניף העבודה המקומי הנוכחי שלך עם כל ההתחייבויות החדשות מהסניף המרוחק המתאים ב- GitHub. Git Pull הוא שילוב של Git Fetch ו- Git Molge .
- Git Push: מעלה את כל הסניף המקומי התחייבות לשלט.
- Git Remote -V: הצג את המאגרים המרוחקים המשויכים אליו ואת שמם המאוחסן, כמו מקור .
התחל עם Git ו- Github
סקור קוד, ניהול פרויקטים ובנה תוכנה לצד 40 מיליון מפתחים.
Git: משובט ענף ספציפי
כברירת מחדל, שיבוט מאגר GIT יוצר עותק של כל המאגר המרוחק במחשב המקומי. עם זאת, במקרים מסוימים, מאגר GIT יכול להיות מסיבי, וייתכן שלא תזדקק לכל הענפים לעבודה שלך.
לפעמים, ייתכן שתרצה לשכפל רק סניף ספציפי, המאפשר לך לעבוד על הסניף הזה מבלי להשפיע על קבצים אחרים. כדאי לשכפל רק סניף ספציפי כאשר עובדים על תכונה או בעת תיקון באג שקיים רק בסניף ההוא.
במדריך זה תלמדו לשכפל סניף git ספציפי.

- Git מותקן (ראה כיצד להתקין את Git באובונטו, MacOS, Windows, Centos 7 או Centos 8).
- מאגר גיט.
סניף GIT ספציפי לשבט
הפקודה המשמשת לשיבוט סניף GIT היא שיבוט גיט . אולם, ה שיבוט גיט פקודה משובצת את כל הענפים והמרוחקים רֹאשׁ (בדרך כלל לִשְׁלוֹט / / רָאשִׁי ענף).
ישנן שתי דרכים לשכפל ענף גיט יחיד עם שיבוט גיט :
- שיטה 1. משובט את המאגר כולו, להביא את כל הענפים ובדוק את הענף שצוין לאחר תהליך השיבוט.
- שיטה 2. שיבוט רק ענף ספציפי ואין ענפים אחרים.
החלקים שלהלן מסבירים את שתי השיטות כך שתוכלו להשתמש בהן להעדפתכם.
שיטה 1 – הביאו את כל הסניפים והקופה אחת
השתמש בשיטה זו כדי להביא את כל הענפים ממאגר ואז לבדוק אחת אחת. הסניף שצוין הופך לסניף המקומי המוגדר עבור Git Push ו- Git Pull. עם זאת, שימו לב שהפקודה עדיין משיגה את כל הקבצים מכל הסניפים במאגר.
השתמש בתחביר הבא כדי להביא את כל הענפים מהמאגר המרוחק ולבדוק את זה שצוין:
Git Clone-Branch [Brang_Name] [Remote-url] הערה: החלף את המשתנים [שם הסניף] וכן [מרחוק- url] עם שם הענף הנכון וכתובת אתר מרוחק.

בדוגמה שלמעלה אנו משיגים את כל הענפים מהמאגר שצוין ובודקים את תכונה חדשה ענף. לאחר שינוי הספרייה לזו המכילה את המאגר, סניף ברירת המחדל הוא תכונה חדשה , לֹא לִשְׁלוֹט .
שיטה 2 – הבאת קבצים מסניף יחיד בלבד
השיטה השנייה מאפשרת לך להביא רק את הקבצים מהסניף שצוין, ושום דבר אחר. פעולה זו חוסכת הרבה מקום בכונן הקשיח ומפחיתה את גודל ההורדה. מכיוון שמאגרים מסוימים יכולים להיות גדולים מאוד, שיטה זו מפחיתה את השימוש ברוחב הפס אם אתה צריך לעבוד על סניף ספציפי בלבד.
הערה: על מנת להביא רק סניף יחיד, Git גרסה 1.7.10 ואילך נדרש.
Git Clone-Branch [Brank_Name]-Single-Branch [Remote-url] 
הפקודה משיגה את הענף שצוין ומעתיקה רק את הקבצים הכלולים בסניף זה, מבלי להביא סניפים או קבצים אחרים. רץ סניף גיט מראה אילו ענפים הועתקו.
מדריך זה הראה כיצד להביא סניף יחיד ממאגר GIT. האפשרות שימושית כאשר אינך רוצה להוריד את כל המאגר, או כשאתה רוצה לעבוד רק על תכונה יחידה.
לקבלת הדרכות נוספות של GIT, עיין במדריך למתחילים של Git שלנו, עיין במדריך לתגי GIT שלנו, או במדריך התת git שלנו.
האם המאמר הזה היה מועיל?
Bosko Marijan
לאחר שעבד כמחנך וככותב תוכן, בשילוב עם התשוקה שלו לכל החיים לכל הדברים היי-טק, בוסקו שואף לפשט מושגים מורכבים ולהפוך אותם לידידותיים למשתמש. זה הוביל אותו לכתיבה טכנית בפניקסנאפ, שם הוא ממשיך במשימתו להפיץ את הידע.
הבא כדאי לקרוא
22 במרץ 2023
הדרכה זו מציגה שתי שיטות למיזוג סניף הראשי לסניף אחר ב- Git. ראה דוגמאות ושימוש במקרים.
28 בספטמבר 2022
הפקודה git subst. מדריך זה מראה לך כיצד להשתמש ב- Git Substodule init עם דוגמאות לשימוש נפוץ.
16 במרץ 2023
סניפים ב- GIT הם קווי פיתוח עצמאיים במאגר. מדריך זה מראה כיצד למשוך את כל הענפים ממאגר מרוחק למקומי בגיט.
21 בפברואר 2023
מאמר זה משווה ומספק עצות לבחירה בין SSH ו- HTTPS – שני פרוטוקולי רשת המשמשים לאבטחת החיבור למאגרים מרוחקים.



