Git Clone Branch: שכפול ענף מסוים
עודכן לאחרונה
כברירת מחדל git clone עובר לענף ברירת המחדל של המאגר (בדרך כלל main) אבל מוריד את כל הענפים. כדי להתחיל בענף אחר, הוסיפו -b <branch>. כדי להוריד רק את הענף הזה ולדלג על השאר, שימושי במאגרים גדולים או ב-CI, הוסיפו גם --single-branch.
נסו את הפקודות האלה בעורך הטרמינל אונליין: shell אמיתי בדפדפן, בלי להתקין כלום.
תחביר
| פקודה | מה היא עושה |
|---|---|
git clone -b dev <url> | שכפול ומעבר לענף dev |
git clone -b dev --single-branch <url> | שכפול ההיסטוריה של הענף dev בלבד |
git clone <url> ואז git switch dev | שכפול של הכל ואז מעבר ענף |
באיזו דרך להשתמש
| מטרה | פקודה |
|---|---|
| להתחיל בענף מסוים ולשמור את כל הענפים | git clone -b dev <url> |
| צריך רק ענף אחד | git clone -b dev --single-branch <url> |
| כבר שוכפל, רוצים ענף נוסף | git fetch ואז git switch dev |
שאלות נפוצות על שכפול ענף מסוים ב-Git
איך משכפלים ענף מסוים ב-Git?
הריצו
git clone -b <branch> <url> (או בצורה הארוכה --branch). Git משכפל את המאגר ועובר לענף שציינתם במקום לענף ברירת המחדל. כל שאר הענפים עדיין מורדים, אלא אם מוסיפים גם --single-branch.איך משכפלים רק ענף אחד ותו לא?
שלבו את הדגלים:
git clone -b <branch> --single-branch <url>. כך מורדת רק ההיסטוריה של הענף שצוין, וכל שאר הענפים מדולגים. זה שכפול קטן ומהיר יותר, שימושי במאגרים גדולים או בצינורות CI שצריכים רק ענף אחד.אפשר לעבור לענף אחר אחרי שכפול של ענף יחיד?
לא ישירות, כי הענפים האחרים לא הורדו. קודם צריך להגיד ל-Git להוריד אותם,
git remote set-branches origin '*' ואז git fetch, ואחרי זה אפשר להריץ git switch לכל ענף. אם אתם צופים שתצטרכו כמה ענפים, עדיף לעשות שכפול רגיל.מה ההבדל לעומת שכפול רגיל ואז מעבר ענף?
git clone <url> רגיל ואחריו git switch <branch> נותנים לכם את כל הענפים ואז עוברים לזה שרציתם, מתאים לשימוש רגיל. git clone -b מתחיל אתכם בענף הזה מיד, ועם --single-branch הוא גם חוסך את הורדת השאר.אפשר לתרגל את זה אונליין?
כן. פתחו את עורך הטרמינל אונליין כדי להריץ
git clone ב-shell אמיתי בדפדפן, בלי להתקין כלום. גם קורס ה-Git האינטראקטיבי והחינמי של Coddy מלמד איך משיגים מאגר צעד אחר צעד.