Subversion/פעולות על השרת


עדכון השרת עריכה

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

svn commit --message="The commit message."
svn commit --file=file

הפקודה הראשונה משתמשת בהודעה שבפרמטר message (ללא המרכאות) כהודעת השינוי, שתוצג לכל המשתמשים בשרת כסיבה לשינוי. הפקודה השנייה משתמשת בהודעה שבתוך הקובץ שבפרמטר file, והיא מתאימה יותר להודעות ארוכות או לכאלה שכוללות מעבר שורה.

לאחר ביצוע הפקודה, יבוצע עדכון חלקי של הקוד המקומי בקבצים שעודכנו, אך לא יבוצע עדכון מלא של כל הקבצים.

לא ניתן לבצע עדכון בקובץ שעודכן בשרת אחרי העדכון האחרון של הקוד המקומי, כדי למנוע קונפליקטים בשרת; אם יש בעיה כזו (File out of date), יש לבצע svn update, לפתור את הקונפליקט (אם לא נפתר אוטומטית) ולנסות שנית.

במקרה של שימוש ב-SSH,

פעולות ישירות על השרת עריכה

חלק מהפעולות שניתן לבצע על הקוד המקומי, ניתן לבצע גם ישירות על השרת, פשוט באמצעות סיפוק כתובת ה-URL שלו במקום שם הקובץ, וכתיבת פרמטר message או file כמו ב-svn commit. כדי למחוק קובץ מהשרת, יש להשתמש ב-svn delete; כדי להעביר או להעתיק קובץ, יש להשתמש ב-svn move או svn copy. הפעולה תתבצע מיידית.

הצגת מידע על השרת עריכה

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

svn log file

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

קיימת גם תכונה המאפשרת לראות את המשתמש האחרון ששינה כל שורה הקובץ, ובאיזו גרסה הוא שינה אותה:

svn blame file

ניתן גם להשתמש בפקודת svn status הבאה:

svn status --show-updates

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

מיזוג שינויים בין גרסאות עריכה

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

svn merge -rOLD:NEW .

הפקודה ממזגת את כל השינויים שבוצעו בין הגרסאות האלה לעותק המקומי. פקודה זו שימושית לעדכון חלקי קוד שהועתקו לענף (branch) משלהם מהעץ הראשי (trunk), וכן לשחזור שינויים: OLD יכול להיות הגרסה שאחרי השינוי, ו-NEW הגרסה שלפני השינוי, וכך מתבצע שחזור של גרסה מסוימת.

הן OLD והן LEN יכולים להיות כל אחד מהערכים הבאים:

  • מספר גרסה
  • תאריך - הגרסה שבתחילת התאריך הזה
  • HEAD - הגרסה האחרונה בשרת
  • BASE - הגרסה של הקוד המקומי
  • COMMITTED - הגרסה האחרונה שנשלחה לשרת לפני או בזמן BASE
  • PREV - הגרסה האחרונה שלפני COMMITTED


הפרק הקודם:
מניפולציות על הקוד המקומי
פעולות על השרת -