मैं अपने स्थानीय मशीन पर 'git' तक कोई पहुंच नहीं होने से GitHub से एक निजी भंडार कैसे डाउनलोड कर सकता हूं?


9

मैं क्या करना चाहता हूं GitHub से निजी रिपॉजिटरी संग्रह डाउनलोड करना है, इसे निकालें, संग्रह फ़ाइल को हटा दें और डाउनलोड किए गए प्रोजेक्ट के अंदर कुछ निर्देशिकाओं को कॉपी करें।

मैंने उपयोग करने की कोशिश की wgetलेकिन मैं खुद को अधिकृत नहीं कर सकता:

wget --header='Authorization: token MY_TOKEN_CREATED_ON_GITHUB' https://github.com/MY_USER/MY_REPO/archive/master.tar.gz -O - | tar xz

मैंने भी इसके साथ प्रयास किया cURL:

curl -i -H 'Authorization: token MY_TOKEN_CREATED_ON_GITHUB' https://github.com/MY_USER/MY_REPO/archive/master.tar.gz > file.tar.gz | tar xz

यहां प्राधिकरण पास होता है, लेकिन मैं फ़ाइल नहीं निकाल सकता।

उसको कैसे करे?


आप सिर्फ इस्तेमाल क्यों नहीं करते git clone https://github.com/MY_USER/MY_REPO?
तेरो किलकेनन

1
क्योंकि मैं इसे सर्वर पर कर रहा हूँ जहाँ कोई गाइट नहीं है।
कामिल लेलोनेक

आपकी समस्या का समाधान हो सकता है: stackoverflow.com/questions/23347134/…
इरोडेवलपर्स

जवाबों:


4

समाधान wgetकुछ इस तरह होगा:

wget --header="Authorization: token <OAUTH-TOKEN>" -O - \
    https://api.github.com/repos/<owner>/<repo>/tarball/<version> | \
    tar xz --strip-components=1 && \
    cp -r <dir1> <dir2> ... <dirn> <destination-dir>/

टिप्पणियाँ:

  • --strip-components=1 GitHub में बनाए गए शीर्ष-स्तरीय निर्देशिका को निकाल देगा
  • सुनिश्चित करें कि आप पीछे डाल नहीं /निर्देशिकाओं के साथ कॉपी करने के लिए कर रहे हैं के अंत में cp( <dir1>, <dir2>, ..., <dirn>) और कहा कि अनुगामी /गंतव्य निर्देशिका के अंत में मौजूद है ( <destination-dir>)।

0

बशर्ते आपके पास अपना "पर्सनल एक्सेस टोकन" हो, आप कर्ल का उपयोग करके अपनी रिपॉजिटरी की शाखा का एक संग्रह डाउनलोड कर सकते हैं:

curl -k --header "PRIVATE-TOKEN: xxxx" https://gitlab.xxxxx/api/v4/projects/<projectID>/repository/archive?sha=630bc911c1c20283d3980dcb95fd5cb75479bb9c -o myFilename.tar.gz

रेपो के मुख्य पृष्ठ पर ProjectID प्रदर्शित होता है।

आप पुल-डाउन से इच्छित शाखा का चयन करने के बाद और SHA के लिए दाईं ओर के मान की प्रतिलिपि बनाकर वेब से SHA मान प्राप्त कर सकते हैं। नीचे स्क्रीनशॉट देखें:

यहां छवि विवरण दर्ज करें

ऐसा करने का दूसरा तरीका इस तरह से wget के माध्यम से है:

wget --no-check-certificate -O myFilename.zip --header=PRIVATE-TOKEN:xxxx "https://gitlab.xxxx/api/v4/projects/<projectID>/repository/archive.zip?sha=630bc911c1c20283d3980dcb95fd5cb75479bb9c"

मुझे आशा है कि वह मदद करेंगे।

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