उत्तर मूल रूप से "नहीं" (उस मशीन को छोड़कर) है, क्योंकि रीफ्लॉग कुछ रिफ-नाम के स्थानीय रूप से बनाए गए पुन: असाइनमेंट का लॉग है। अनिवार्य रूप से, हर बार जब आप git update-ref -m msg <name> <target>
चलाने अद्यतन लॉग होता है ... स्थानीय स्तर पर: .git/logs/<name>
एक पंक्ति संलग्न हो जाता है:
$ git update-ref -m foo HEAD HEAD^
$ tail -1 .git/logs/HEAD
2418b6ba8fd0289933c9351260a272b8e410867f 8d945134b0cead535d66af29c8eb4228b5dc3763 [redacted] <[redacted]> 1334106483 -0600 foo
(संदेश से पहले बात, इस मामले foo
में, नहीं रिक्त स्थान बल्कि एक टैब है, मैं एसओ प्रयोजनों के लिए इसे विस्तारित किया गया)। संकल्पनात्मक रूप से, एक शाखा टिप को स्थानांतरित करने वाली हर चीज git update-ref
इसे करने के लिए आमंत्रित करती है (कुछ शैल स्क्रिप्ट हैं और सचमुच ऐसा करते हैं, अन्य लोग केवल सी कोड को आमंत्रित करते हैं जो सभी फाइल-अपडेटिंग करता है) ... और .git/logs
में सबकुछ रिफ्लॉग बनाता है।
यदि अंतर्निहित गिट: // और/या ssh: // प्रोटोकॉल में चीजें हैं जो आपको रिफ्लॉग पर पहुंचने देती हैं, तो यह करती है, लेकिन जहां तक मुझे पता है कि वहां नहीं है।
यदि आपके पास रिमोट सिस्टम की फाइल सिस्टम तक पहुंच है (जो कई बार एक नंगे रिपोज़ है) तो आपके पास हमेशा गिट रीफ्लॉग चलाने का विकल्प होता है। लेकिन इस तरह की पहुंच सामान्य रूप से संभव नहीं है। मुझे सर्वर पक्ष पर रीफ्लॉग की समीक्षा करना संभव बनाने के लिए, गिट सर्वर (केवल पढ़ने-योग्य फ़ाइल शेयर का उपयोग करके) पर यह संभव बनाने की आदत है। –