יצירה ושכפול של מאגר

יוצרים מאגר ב-Secure Source Manager ומשכפלים אותו למחשב המקומי.

לפני שמתחילים

  1. יוצרים מופע של Secure Source Manager או מבקשים גישה למופע קיים. מידע נוסף זמין במאמר יצירת מופע של Secure Source Manager.
  2. התקינו את ה-CLI של Google Cloud.

  3. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  4. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות ליצירת מאגר, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

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

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

במאמרים בקרת גישה באמצעות IAM והענקת גישה של משתמשים למופע מוסבר איך נותנים תפקידים ב-Secure Source Manager.

יצירת מאגר

ממשק אינטרנט

  1. כדי לגשת למופע של Secure Source Manager דרך ממשק האינטרנט שלו, מעתיקים את כתובת ה-URL הבאה לסרגל הכתובות בדפדפן.

    INSTANCE_ID-PROJECT_NUMBER.LOCATION.sourcemanager.dev

    מחליפים את מה שכתוב בשדות הבאים:

    • INSTANCE_ID בשם המכונה.
    • PROJECT_NUMBER עם מספר הפרויקט של המופע Google Cloud. מידע על זיהוי פרויקטים זמין במאמר זיהוי פרויקטים.
    • LOCATION עם האזור של המכונה.

  2. במקרה הצורך, מאמתים באמצעות פרטי הכניסה של Secure Source Manager.

  3. לוחצים על הסמל + יצירת מאגר חדש בפינה השמאלית העליונה של תפריט הניווט.

  4. ממלאים את פרטי המאגר:

    1. מזהה המאגר: מזינים שם למאגר.

    2. תיאור: אופציונלי. תיאור המאגר.

    3. Default branch: השם של ענף ברירת המחדל.

    4. Initialize repository (הפעלת מאגר): אופציונלי. בוחרים באפשרות הזו אם רוצים לאתחל את המאגר ולהוסיף קבצים מסוג ‎ .gitignore, רישיון ו-README.

    5. .gitignore: אופציונלי. בוחרים אילו קבצים לא לעקוב אחריהם באמצעות התבניות בתפריט הנפתח.

    6. license: אופציונלי. בוחרים רישיון נפוץ מהתפריט הנפתח.

  5. לוחצים על יצירת מאגר.

המאגר נוצר במופע של Secure Source Manager.

התפקיד Repo Admin (אדמין מאגר) (roles/securesourcemanager.repoAdmin) מוקצה לכם כשאתם יוצרים מאגר חדש. יכול להיות שיחלפו עד 2 דקות עד שההרשאה החדשה ב-IAM תתעדכן, לכן אם מופיעה שגיאת הרשאות כשמנסים לגשת למאגר אחרי שהוא נוצר, כדאי לחכות כמה דקות ולנסות שוב.

מאגרי המידע שיצרתם מופיעים בממשק האינטרנט של Secure Source Manager בדף My repositories (מאגרי המידע שלי).

הגדרת פרטי הכניסה

מריצים את הפקודה הבאה כדי להוסיף את כלי העזר לאימות של Secure Source Manager להגדרת ה-Git הגלובלית:

Linux

git config --global credential.'https://*.*.sourcemanager.dev'.helper gcloud.sh

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

git config --global credential.'https://INSTANCE_ID-PROJECT_NUMBER-git.LOCATION.sourcemanager.dev'.helper gcloud.sh

Windows

git config --global credential.https://*.*.sourcemanager.dev.helper gcloud.cmd

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

git config --global credential.https://INSTANCE_ID-PROJECT_NUMBER-git.LOCATION.sourcemanager.dev.helper gcloud.cmd

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE_ID בשם של מופע Secure Source Manager.
  • PROJECT_NUMBER במספר הפרויקט. במאמר זיהוי פרויקטים מוסבר איך למצוא את מספר הפרויקט.
  • LOCATION עם האזור של המכונה. מידע נוסף על אזורים זמין במאמר מיקומים.

עוזר האימות משתמש ב-CLI של gcloud כדי לאחזר את פרטי הכניסה שלכםGoogle Cloud כשמשתמשים בפקודות Git עם Secure Source Manager.

כדי לבצע אימות מחדש אחרי ההגדרה הראשונית של פרטי הכניסה, מריצים ב-CLI של gcloud את הפקודה הבאה:

gcloud auth login

שכפול מאגר

  1. בממשק האינטרנט של Secure Source Manager, עוברים לדף המאגר.

  2. מעתיקים את כתובת ה-URL של ה-HTTPS בחלק העליון של דף המאגר.

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

    git clone REPOSITORY_URL
    

    כאשר REPOSITORY_URL היא כתובת ה-URL של HTTPS שמוצגת בחלק העליון של דף המאגר שרוצים לשכפל.

    מתעלמים מהאזהרה לגבי שיבוט מאגר ריק.

העלאה למאגר

  1. בחלון המסוף, עוברים לספרייה של המאגר המשוכפל.

    cd REPOSITORY_NAME
    

    כאשר REPOSITORY_NAME הוא שם המאגר.

  2. יוצרים קובץ README ריק:

    touch README.md
    
  3. מוסיפים את קובץ ה-README ל-Git ויוצרים הודעת קומיט:

    git add README.md
    git commit -m "initial commit"
    
  4. דוחפים את השינויים למאגר המרוחק:

    git push -u origin main
    

    מערכת Git דוחפת את הקובץ מהענף הראשי למקור המרוחק. הפלט אמור להיראות כך:

    Enumerating objects: 3, done.
    Counting objects: 100% (3/3), done.
    Writing objects: 100% (3/3), 211 bytes | 211.00 KiB/s, done.
    Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
    remote: . Processing 1 references
    remote: Processed 1 references in total
    To https://instance-id-123456789012-git.us-central1.sourcemanager.dev/my-project/my-repo.git
    * [new branch]      main -> main
    branch 'main' set up to track 'origin/main'.
    

הצגת הקבצים ב-Secure Source Manager

בממשק האינטרנט של Secure Source Manager, לוחצים על שם המאגר.

דף המאגר ייפתח וקובץ ה-README.md שלכם יופיע בכרטיסייה <> Code.

הסרת המשאבים

כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, פועלים לפי השלבים הבאים:

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב-Google Cloud שבו פועל Secure Source Manager.
  • LOCATION: האזור שבו נמצאת המכונה. מידע על המיקומים הנתמכים זמין במאמר מיקומים.
  • REPOSITORY_ID: מזהה המאגר.

ה-method של ה-HTTP וכתובת ה-URL:

DELETE https://securesourcemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

"name":"operations/cc3ea26c-9b57-11ed-be0a-2e3b5910efef","metadata":{"@type":"type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata","createTime":"2023-01-23T19:54:49.904779921Z","endTime":"2023-01-23T19:54:50.947030402Z","target":"projects/my-project/locations/us-central1/repositories/my-repo","verb":"delete","apiVersion":"v1"},"done":true,"response":{"@type":"type.googleapis.com/google.protobuf.Empty"}
```

התגובה תיראה כך:

{"name":"operations/cc3ea26c-9b57-11ed-be0a-2e3b5910efef","metadata":{"@type":"type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata","createTime":"2023-01-23T19:54:49.904779921Z","endTime":"2023-01-23T19:54:50.947030402Z","target":"projects/my-project/locations/us-central1/repositories/my-repo","verb":"delete","apiVersion":"v1"},"done":true,"response":{"@type":"type.googleapis.com/google.protobuf.Empty"}

המאמרים הבאים