हेरोकू पर दूरस्थ गिट संशोधन कैसे देखें


85

हरोकू में तैनात करने के लिए, मैं उपयोग करता हूं git push heroku master। लेकिन मैं कैसे देख सकता हूँ कि मैंने किस संशोधन को हेरोकू तक पहुँचाया था? (यदि मैं हाल के संस्करण को आगे बढ़ाता हूं तो अक्सर संदेह में रहता हूं)

जो लोग इससे परिचित नहीं हैं, उनके लिए हेरोकू की लिपि एक दूरस्थ गिट रिपॉजिटरी बनाती है जिसे आप पुश करते हैं। धक्का देने पर, कोड को जादुई रूप से तैनात किया जाता है।

हरोकू स्थानीय रूप में एक दूरस्थ भंडार जोड़ता है:

$ git remote add heroku git@heroku.com:appname.git

हरोकू के मैनुअल में अधिक जानकारी "गिट के साथ तैनाती"

प्रश्न है: मैं हरोकू रिपॉजिटरी में नवीनतम संस्करण कैसे देख सकता हूं?

जवाबों:


63

यदि आपने अभी-अभी धक्का दिया है और सुनिश्चित करना चाहते हैं कि आप अप-टू-डेट हैं, तो आप बस चला सकते हैं git remote show herokuऔर आपको इसके समान आउटपुट दिखाई देगा:

* remote heroku
  Fetch URL: git@heroku.com:XXX.git
  Push  URL: git@heroku.com:XXX.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (up to date)

यही कारण है कि (up to date)अंत में से बदल दिया जाएगा (fast forwardable), तो इसे अपडेट नहीं है।

या, यदि आप हरोकू रिमोट के लिए पूर्ण कमिट लॉग देखना चाहते हैं, तो एकमात्र तरीका मुझे पता है कि इसे पहले कैसे जांचना है। git checkout heroku/masterआपको वर्तमान प्रतिबद्ध हैश और प्रतिबद्ध टिप्पणी देगा: HEAD is now at <short commit hash>... <commit comment>और git logआपको शेष कहानी देगा।


इस उत्तर के लिए बहुत बहुत धन्यवाद! मुझे हर जगह इसकी तलाश थी।
tbaums

3
वास्तव में आपको रेफरी नहीं बताता
Obie

वहाँ किसी भी तरह से खुद को ऑनलाइन देखने के लिए एक रास्ता है एक github रेपो में?
एरान ओटज़ैप

128

सही उत्तर वास्तव में इतना सरल है। आपको कुछ भी जांचने की आवश्यकता नहीं है, न ही आपको COMMIT_HASH हैक्स का सहारा लेना होगा (जो सीडर स्टैक पर काम नहीं करते हैं)। आपको बस इतना करना है:git ls-remote <remote>

 > git ls-remote heroku
ddaszxcewb585d3a3c00de816a197b14462791a3        HEAD
ddaszxcewb585d3a3c00de816a197b14462791a3        refs/heads/master

तो यह आपको वह संस्करण दिखाएगा जो एक विशेष दूरस्थ रिपॉजिटरी को इंगित किया गया है?
EE33

12
इस संदेश के आउटपुट को लेने के लिए और आसानी से git कमिट लॉग और शाब्दिक अंतर देखें: git ls-remote heroku | awk 'END{print $1}' | xargs git show
बॉबी नॉर्टन

@ बॉबीऑर्टन की टिप्पणी यहां सीधे-सीधे जवाब है। अच्छा लगा।
बेन हूल

45

अब आप चाहते हैं heroku releasesऔर आप 5 कमिट्स की तरह देखेंगे। एक शुरुआत कम से कम।


1
धन्यवाद। यह वास्तव में मुझे दिखाता है कि मैं क्या पता लगाना चाहता हूं (रोलबैक करने के बाद वास्तव में क्या चल रहा है)।
Cymen

24

किस बारे में

git log heroku/master

आप कैसे तैनात करते हैं, इस पर निर्भर करते हुए, masterशाखा संदर्भ एसएचए में अद्यतन हो सकता है या नहीं हो सकता है।
जस्टिन

11

यदि आप स्थिति में भाग चुके हैं, जैसे कि मैंने अभी-अभी किया है, जहां एक सहकर्मी ने आपके हरोकू ऐप को एक रिलीज़ के लिए वापस ले लिया है जो यह नहीं दिखाता है heroku releasesक्योंकि वे केवल 2 रिलीज़ का ट्रैक रखते हैं ... हरोकू / मास्टर का चेकआउट विधि मदद नहीं करेगी, क्योंकि HEAD वह नहीं है जो अब तैनात किया गया है।

बचाव के लिए अनिर्दिष्ट:

$ heroku console "ENV['COMMIT_HASH']"
"12abcdef"

यह मीठा है लेकिन क्या अंतिम रास्ता पाने का कोई तरीका है। मैंने जाँच की ईएनवी में कोई चर नहीं है जिसका मैं तारीख के लिए उपयोग कर सकता हूं।
डेविड

10
यह अब देवदार पर काम नहीं करता है, अगर कोई प्रतिस्थापन है?
dolzenko

मुझे 'heroku console' has been disabled( devcenter.heroku.com/changelog-items/109 ) मिलता है । मैंने कोशिश की heroku run "ENV['COMMIT_HASH']"लेकिन मुझे मिल गया bash: ENV[COMMIT_HASH]: command not found। जब मैं उपयोग करता echoहूं तो मुझे स्ट्रिंग मिलती है ENV[COMMIT_HASH]
मेनलोनी

आप चलकर देवदार के ढेर पर रेल कंसोल तक पहुँच heroku run consoleसकते हैं और आप देख सकते हैं कि ENV['COMMIT_HASH']चलने से चर के अंदर क्या है heroku run echo $ENV['COMMIT_HASH'](क्योंकि यह एक पर्यावरण चर है, आपको '$' - बहुत पसंद है echo $PATH)।
तिरछा

-1

heroku सादे पुराने Git का उपयोग कर रहा है, इसलिए ।।

नवीनतम 5 को वर्तमान शाखा पर दिखाता है: git log -5

Git's gui के माध्यम से इतिहास दिखाने के लिए: gitk

वर्तमान स्थिति देखें (यह दिखाएगा कि आपके पास कोई फ़ाइल नहीं है): git status

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.