יש למישהוא מושג איך לשלוף אילו קבצים ומי שינה מה בהתייחס ל dropbox ?
מה שאני רוצה לעשות זה שכל שינוי קבצים שdropbox מבצע יגרום לgit commit ב rep הפרטי שלי.
המטרה הגדולה היא למנוע מצב שבגלל בעייה כלשהיא בהקשר לחשבון אני מאבד את היסטוריית השינוים בקבצים.
כיום אני מבצע git add . && git commit כל X זמן (פעולה שהיא יחסית מציקה), נכון שאני יכול להשתמש ב inotify אבל אני מחפש פתרון נוח יותר.
חשבתי להשתמש ב gitfs אבל אז הבנתי שזה לא בדיוק מה שאני צריך כי כל סגירת קובץ תבצע commit ולא יהיה לי את המידע הנוסף (שמגיע מdropbox).
אז פתחתי לי את dbus-monitor וראיתי שכאשר יש הוספת קבצים יש ההודעה בdbus מה שאני מאמין יכול להכין את תוכן הקובץ או איזהשהוא מידע על השינויי:
ממה שאני מבין קיימת פה כותרת וסיומת למידע (זה לא נראה כמו padding אלה יותר ככותרת המכילה מידע חיוני).
במצב אופטימלי הייתי מקבל את שם המשתמש שביצע את השינוי רק שאני לא יודע איך להשיג את המידע הנל.
מה שאני רוצה לעשות זה שכל שינוי קבצים שdropbox מבצע יגרום לgit commit ב rep הפרטי שלי.
המטרה הגדולה היא למנוע מצב שבגלל בעייה כלשהיא בהקשר לחשבון אני מאבד את היסטוריית השינוים בקבצים.
כיום אני מבצע git add . && git commit כל X זמן (פעולה שהיא יחסית מציקה), נכון שאני יכול להשתמש ב inotify אבל אני מחפש פתרון נוח יותר.
חשבתי להשתמש ב gitfs אבל אז הבנתי שזה לא בדיוק מה שאני צריך כי כל סגירת קובץ תבצע commit ולא יהיה לי את המידע הנוסף (שמגיע מdropbox).
אז פתחתי לי את dbus-monitor וראיתי שכאשר יש הוספת קבצים יש ההודעה בdbus מה שאני מאמין יכול להכין את תוכן הקובץ או איזהשהוא מידע על השינויי:
method call sender=:1.83 -> dest=:1.23 serial=14 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
string "Dropbox"
uint32 0
string ""
string "nandroid.md5 added"
string ""nandroid.md5" was added to your Dropbox folder. (click to view)"
array [
string "default"
string "default"
]
array [
dict entry(
string "y"
variant int32 15
)
dict entry(
string "x"
variant int32 996
)
dict entry(
string "icon_data"
variant struct {
int32 16
int32 16
int32 64
boolean true
int32 8
int32 4
array of bytes [
00 5c 9e 00 00 5c 9e 00 00 5e a0 00 00 56 99 00 00 4c 91 67
00 4e 93 71 00 58 9c 00 00 5e 9f 00 00 5d 9f 00 00 59 9c 00
00 50 94 6f 00 4d 92 69 00 56 99 00 00 5e a0 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5e a0 00 00 54 97 00 00 46 8c 5f
31 81 ba ff 2b 7c b6 ff 00 46 8e 3f 00 5c 9e 00 00 5c 9e 00
00 4a 8e 3b 24 79 b6 ff 2d 7f bc ff 00 45 8c 62 00 52 97 00
00 5e a0 00 00 5c 9e 00 00 5b 9d 00 00 49 8c 2a 05 58 9b c0
50 9b d5 ff a7 dd ff ff bb e5 ff ff 40 86 bb ff 00 3e 89 44
00 44 89 42 27 7b bb ff 89 cf ff ff a2 db ff ff 67 a6 d5 ff
07 59 9b c3 00 43 8c 2c 00 5b 9d 00 05 5c 9e 97 31 84 c5 ff
6b bb f6 ff 8e d0 ff ff 86 c3 f0 ff a2 d2 f5 ff c4 e7 ff ff
50 90 c0 ff 15 75 bf ff 66 bf ff ff 78 c1 f6 ff 80 c0 f0 ff
b0 df ff ff a9 d7 f6 ff 5c 97 c5 ff 0b 5d 9e 98 08 5b 9e dc
58 b0 f0 ff 84 d0 ff ff 78 bc f0 ff 83 c2 f0 ff 88 c3 ee ff
b1 d7 f3 ff f9 ff ff ff ca ec ff ff 6d ba f3 ff 58 ae ee ff
7b be f0 ff 91 c7 f0 ff d2 f2 ff ff a6 d4 f0 ff 11 5d 9e de
00 54 96 00 00 4e 91 9e 44 98 d5 ff 84 c9 fc ff 85 c3 f1 ff
b7 db f6 ff e9 f4 fc ff e9 f5 fd ff db ee fd ff df ef fc ff
a8 d5 f6 ff 7c bf f1 ff a3 d6 fc ff 6c aa d6 ff 00 4a 91 a1
00 51 96 00 00 5e a0 00 00 54 97 00 00 38 7f 9e 43 94 d1 ff
de f6 ff ff f5 fc ff ff e0 ef fb ff e0 f0 fb ff c8 e5 fb ff
cf e7 fb ff ff ff ff ff fe ff ff ff 56 9d d2 ff 00 32 80 a2
00 51 96 00 00 5f a0 00 00 57 99 00 00 49 8c 71 39 89 c3 f1
59 b0 f2 ff 52 aa ef ff bc de f7 ff f9 fc fe ff e3 f2 fb ff
d3 ea fc ff f5 fb ff ff b7 db f7 ff 64 b1 ed ff 86 c3 f2 ff
52 93 c4 f3 00 44 8d 75 00 54 99 00 06 5a 9d b3 49 a0 e0 ff
8a d2 ff ff 65 b5 f2 ff 2f 97 e8 ff 4b a4 e9 ff 9c cd f0 ff
f6 f9 fc ff d6 ec fc ff 58 ab f0 ff 15 8a e6 ff 39 9b e6 ff
8c c6 f1 ff d1 f0 ff ff 8b be e1 ff 0e 5c 9d b6 07 5d 9f c1
44 98 d9 ff 85 cd ff ff 6d bc f9 ff 3b 9d e9 ff 5e ae ec ff
6c b3 e8 ff b7 d9 f2 ff 43 a2 ef ff 00 73 e5 ff 33 99 ea ff
4c a3 e7 ff 96 ce f9 ff c7 eb ff ff 81 b3 d9 ff 10 5f 9f c4
00 58 9a 00 00 48 8b 55 1e 71 ad ee 52 a8 e8 ff 41 a4 f1 ff
60 ae ea ff a9 d3 f2 ff c8 e4 f8 ff 68 b7 f2 ff 40 a2 ed ff
2c 95 e8 ff 51 aa ef ff 7c ba e9 ff 2a 75 ae f1 00 41 8b 58
00 56 9a 00 00 5c 9e 00 00 5d 9f 00 00 3e 84 0c 22 76 b3 ff
9b db ff ff 97 cf f8 ff ce e6 f8 ff c5 e1 f7 ff 65 b5 f1 ff
74 bc f0 ff 75 be f5 ff a9 de ff ff 30 7b b0 ff 00 3a 85 0f
00 5d 9f 00 00 5d 9e 00 00 5c 9e 00 00 5c 9e 00 00 59 9c 00
02 53 97 7a 48 89 bf ff b8 e3 fd ff e8 fb ff ff c2 df f7 ff
60 b3 f1 ff 82 cb ff ff a1 d3 f7 ff 4a 88 b8 ff 00 53 96 72
00 5a 9d 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5d 9f 00 00 5b 9d 00 00 43 8b 2a 08 57 9b c5 8c b9 da ff
ea fd ff ff 80 cb ff ff 47 97 d4 ff 03 57 99 bc 00 45 8d 22
00 5b 9e 00 00 5d 9f 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5f a0 00 00 51 96 00
00 43 8d 69 3e 88 bd ff 2c 7f bb ff 00 47 8c 60 00 54 98 00
00 5e a0 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5f a0 00 00 52 98 00 00 49 92 72 00 50 92 6e 00 56 99 00
00 5e a0 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00
]
}
)
]
int32 -1
method return sender=:1.23 -> dest=:1.83 reply_serial=14
uint32 6
signal sender=:1.23 -> dest=(null destination) serial=941 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=NotificationClosed
uint32 6
uint32 1
תוכן הקובץ היינו :
string "Dropbox"
uint32 0
string ""
string "nandroid.md5 added"
string ""nandroid.md5" was added to your Dropbox folder. (click to view)"
array [
string "default"
string "default"
]
array [
dict entry(
string "y"
variant int32 15
)
dict entry(
string "x"
variant int32 996
)
dict entry(
string "icon_data"
variant struct {
int32 16
int32 16
int32 64
boolean true
int32 8
int32 4
array of bytes [
00 5c 9e 00 00 5c 9e 00 00 5e a0 00 00 56 99 00 00 4c 91 67
00 4e 93 71 00 58 9c 00 00 5e 9f 00 00 5d 9f 00 00 59 9c 00
00 50 94 6f 00 4d 92 69 00 56 99 00 00 5e a0 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5e a0 00 00 54 97 00 00 46 8c 5f
31 81 ba ff 2b 7c b6 ff 00 46 8e 3f 00 5c 9e 00 00 5c 9e 00
00 4a 8e 3b 24 79 b6 ff 2d 7f bc ff 00 45 8c 62 00 52 97 00
00 5e a0 00 00 5c 9e 00 00 5b 9d 00 00 49 8c 2a 05 58 9b c0
50 9b d5 ff a7 dd ff ff bb e5 ff ff 40 86 bb ff 00 3e 89 44
00 44 89 42 27 7b bb ff 89 cf ff ff a2 db ff ff 67 a6 d5 ff
07 59 9b c3 00 43 8c 2c 00 5b 9d 00 05 5c 9e 97 31 84 c5 ff
6b bb f6 ff 8e d0 ff ff 86 c3 f0 ff a2 d2 f5 ff c4 e7 ff ff
50 90 c0 ff 15 75 bf ff 66 bf ff ff 78 c1 f6 ff 80 c0 f0 ff
b0 df ff ff a9 d7 f6 ff 5c 97 c5 ff 0b 5d 9e 98 08 5b 9e dc
58 b0 f0 ff 84 d0 ff ff 78 bc f0 ff 83 c2 f0 ff 88 c3 ee ff
b1 d7 f3 ff f9 ff ff ff ca ec ff ff 6d ba f3 ff 58 ae ee ff
7b be f0 ff 91 c7 f0 ff d2 f2 ff ff a6 d4 f0 ff 11 5d 9e de
00 54 96 00 00 4e 91 9e 44 98 d5 ff 84 c9 fc ff 85 c3 f1 ff
b7 db f6 ff e9 f4 fc ff e9 f5 fd ff db ee fd ff df ef fc ff
a8 d5 f6 ff 7c bf f1 ff a3 d6 fc ff 6c aa d6 ff 00 4a 91 a1
00 51 96 00 00 5e a0 00 00 54 97 00 00 38 7f 9e 43 94 d1 ff
de f6 ff ff f5 fc ff ff e0 ef fb ff e0 f0 fb ff c8 e5 fb ff
cf e7 fb ff ff ff ff ff fe ff ff ff 56 9d d2 ff 00 32 80 a2
00 51 96 00 00 5f a0 00 00 57 99 00 00 49 8c 71 39 89 c3 f1
59 b0 f2 ff 52 aa ef ff bc de f7 ff f9 fc fe ff e3 f2 fb ff
d3 ea fc ff f5 fb ff ff b7 db f7 ff 64 b1 ed ff 86 c3 f2 ff
52 93 c4 f3 00 44 8d 75 00 54 99 00 06 5a 9d b3 49 a0 e0 ff
8a d2 ff ff 65 b5 f2 ff 2f 97 e8 ff 4b a4 e9 ff 9c cd f0 ff
f6 f9 fc ff d6 ec fc ff 58 ab f0 ff 15 8a e6 ff 39 9b e6 ff
8c c6 f1 ff d1 f0 ff ff 8b be e1 ff 0e 5c 9d b6 07 5d 9f c1
44 98 d9 ff 85 cd ff ff 6d bc f9 ff 3b 9d e9 ff 5e ae ec ff
6c b3 e8 ff b7 d9 f2 ff 43 a2 ef ff 00 73 e5 ff 33 99 ea ff
4c a3 e7 ff 96 ce f9 ff c7 eb ff ff 81 b3 d9 ff 10 5f 9f c4
00 58 9a 00 00 48 8b 55 1e 71 ad ee 52 a8 e8 ff 41 a4 f1 ff
60 ae ea ff a9 d3 f2 ff c8 e4 f8 ff 68 b7 f2 ff 40 a2 ed ff
2c 95 e8 ff 51 aa ef ff 7c ba e9 ff 2a 75 ae f1 00 41 8b 58
00 56 9a 00 00 5c 9e 00 00 5d 9f 00 00 3e 84 0c 22 76 b3 ff
9b db ff ff 97 cf f8 ff ce e6 f8 ff c5 e1 f7 ff 65 b5 f1 ff
74 bc f0 ff 75 be f5 ff a9 de ff ff 30 7b b0 ff 00 3a 85 0f
00 5d 9f 00 00 5d 9e 00 00 5c 9e 00 00 5c 9e 00 00 59 9c 00
02 53 97 7a 48 89 bf ff b8 e3 fd ff e8 fb ff ff c2 df f7 ff
60 b3 f1 ff 82 cb ff ff a1 d3 f7 ff 4a 88 b8 ff 00 53 96 72
00 5a 9d 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5d 9f 00 00 5b 9d 00 00 43 8b 2a 08 57 9b c5 8c b9 da ff
ea fd ff ff 80 cb ff ff 47 97 d4 ff 03 57 99 bc 00 45 8d 22
00 5b 9e 00 00 5d 9f 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5f a0 00 00 51 96 00
00 43 8d 69 3e 88 bd ff 2c 7f bb ff 00 47 8c 60 00 54 98 00
00 5e a0 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5f a0 00 00 52 98 00 00 49 92 72 00 50 92 6e 00 56 99 00
00 5e a0 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00 00 5c 9e 00
00 5c 9e 00
]
}
)
]
int32 -1
method return sender=:1.23 -> dest=:1.83 reply_serial=14
uint32 6
signal sender=:1.23 -> dest=(null destination) serial=941 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=NotificationClosed
uint32 6
uint32 1
61bf924dc733f0ba0b8efb939ad76080 boot.img
74344b92d55334df38176bd6f386b822 cache.ext4.tar
82e1505c3eaceb04445231acdc007f48 data.ext4.tar
96995b58d4cbf6aaa9041b4f00c7f6ae recovery.img
3f3435b5dc55508e23afc6233465699f system.ext4.tar
e55853931599a03c49c424f2a0ed9b34 .android_secure.vfat.tar
74344b92d55334df38176bd6f386b822 cache.ext4.tar
82e1505c3eaceb04445231acdc007f48 data.ext4.tar
96995b58d4cbf6aaa9041b4f00c7f6ae recovery.img
3f3435b5dc55508e23afc6233465699f system.ext4.tar
e55853931599a03c49c424f2a0ed9b34 .android_secure.vfat.tar
ממה שאני מבין קיימת פה כותרת וסיומת למידע (זה לא נראה כמו padding אלה יותר ככותרת המכילה מידע חיוני).
במצב אופטימלי הייתי מקבל את שם המשתמש שביצע את השינוי רק שאני לא יודע איך להשיג את המידע הנל.
2 תגובות:
דרך האתר שלהם אתה יכול לראות גרסאות קודמות של הקבצים ומי שינה ומתי. פשוט תבחר את הקובץ ואז תלחץ למעלה על Revisions (אם זו היתה כוונת המתכנת..)
אין זו כוונת המשורר :
אני מודע לאפשרות של שימוש חיצוני באתר אולם אני מעוניין להמנע מזה ולהשתמש רק בתהליכים שרצים ועובדים על המחשב שלי ולתקשר עימם.
אני מעוניין לדעת לפרש את המידע שהתהליך מפרסם למערכת בזמן ריצתו.
הוסף רשומת תגובה