2012-02-06 13 views
15

मैं Git के माध्यम से मेरी दूरस्थ सर्वर से एक वेबसाइट धक्का दे दिया, लेकिन त्रुटिमैं गिट पर हुक पोस्ट-प्राप्त मैन्युअल रूप से कैसे चला सकता हूं?

cannot run post-receive: No such file or directory 

तो सामान सर्वर पर है मिल गया है, यह सिर्फ मेरे/सार्वजनिक फ़ोल्डर में तैनात नहीं किया गया है।

हालांकि मुझे पोस्ट-प्राप्त फ़ाइल है इसलिए मुझे यकीन नहीं है कि यह क्यों नहीं मिला। अब मैंने सोचा कि मुझे बस इतना करना है कि चेकआउट करने के लिए इस पोस्ट-हुक हुक को मैन्युअल रूप से चलाएं, हालांकि मुझे नहीं पता कि कैसे ...

+0

जांचें कि [यह] (http://stackoverflow.com/questions/3563904/git-hook-post-merge-error-cannot-run) मदद करता है। – vpatil

उत्तर

22

एक हुक निष्पादन योग्य शैल स्क्रिप्ट है। यदि आप इसे हाथ से चलाने की ज़रूरत है, तो आप इसे कमांड लाइन से निष्पादित कर सकते हैं, हालांकि अपेक्षित stdin इनपूट का निर्माण कुछ हद तक कठिन है यदि आपके रेपो में एक से अधिक सिर हैं (यानी, आप शाखाओं का उपयोग करते हैं)। यह आपके लिए ऐसा करने के लिए निम्न स्तर का कमांड होना चाहिए, लेकिन मुझे यह ऑफहैंड नहीं पता है।

एक bash खोल और अपना Git रेपो में एक भी शाखा मान लिया जाये ...

# Print the log with full hashes and commit subject, so that you can 
# figure out which hashes to use for the FROM and TO range. 
/path/to/repo$ git log --pretty=%H\ %s 

# assuming the FROM commit identifies as 999988887777 
# and te TO commit identifies as 000011112222 
# (Note: use the full length hashes; I've shortened them for the example) 
/path/to/repo$ .git/hooks/post-receive <<MARK 
999988887777 000011112222 refs/heads/master 
MARK 

... ऊपर सिर्फ असली चीज़ की तरह काम करना चाहिए।

+0

ठीक है अब तो मैं website.git/हुक/उत्तर प्राप्त भाग गया और मिल गया "पंक्ति 1: GET_WORK_TREE: आदेश नहीं मिला": -/ – nerdess

+4

डी 'ओह मुझे पता चला कि क्या गलत था: यह निश्चित रूप से GIT_WORK_TREE होना चाहिए नहीं GET_WORK_TREE – nerdess

+0

मार्क सिंटैक्स क्या करता है? मैं इस पर कोई दस्तावेज़ खोजने में असमर्थ रहा हूं। धन्यवाद! – Xgongiveittoya

संबंधित मुद्दे