דיף סמנטי
שינוי שם טהור נראה בדיף שורות כמו קובץ שלם שנמחק וקובץ שלם שנוסף. זה נכון מבחינה טכנית וחסר תועלת לחלוטין.
מעל כל דיף של קובץ, Gitcito מציג רצועת מה השתנה: שתי הגרסאות של הקובץ מנותחות באמצעות tree-sitter — עצי תחביר אמיתיים, לא ביטויים רגולריים — וההכרזות שלהן מותאמות זו לזו.

| פסק דין | דוגמה |
|---|---|
| שונה שם | startServer → bootServer |
| חתימה | open(path) → open(path, mode) |
| נוסף / הוסר | פונקציה חדשה; פונקציה שנמחקה |
| הועבר | אותו קוד, 40 שורות נמוך יותר |
| שונה | אותו שם ואותה חתימה, גוף אחר |
שינויי שם ושינויי חתימה ממוינים ראשונים — הם מה שסוקר לא יכול להרשות לעצמו לפספס. לחצו על שורה כדי לקפוץ לסימבול הזה בדיף.
מה הוא יודע לנתח
TypeScript, TSX, JavaScript, Python, Go, Rust, Java, C, C++, C#, Ruby, PHP, Swift, Kotlin, Scala, Lua, Bash ו־Zig.
קובץ שלשפה שלו אין דקדוק פשוט שומר על דיף השורות הרגיל שלו — הרצועה כלל אינה מופיעה. אותו דבר לגבי קבצים מעל 400 קילו־בייט.
מגבלות בכנות
- שינוי שם שגם הגוף שלו השתנה מדווח כשינוי שם וגם אומר זאת.
- שתי פונקציות בנות שורה אחת שבמקרה נראות דומות אינן מזווגות: מתחת לסף גודל מסוים ההתאמה חייבת להיות כמעט מדויקת, ולכן אתם מקבלים הוסר + נוסף נקיים במקום שינוי שם בדיוני.
- סימבולים שרק נסחפו כמה שורות כי משהו מעליהם גדל אינם מדווחים כ״הועבר״ — זה היה קובר את ההעברות האמיתיות.
ראו גם: מציג הדיפים · מה השתנה מאז