2012-03-30 19 views
15

मेरे पास कुछ खुली स्रोत परियोजनाएं हैं जिन्हें मैं प्रबंधित करता हूं। मैं उनके लिए चलाए गए वेबसर्वर पर एक निर्देशिका में .tar.gz रिलीज पोस्ट कर रहा हूं। मैं उन्हें जिथूब में पोस्ट करना चाहता हूं। रिलीज के लिए रिलीज और हस्ताक्षर पोस्ट करने का कोई आसान तरीका है? मेरे उपयोगकर्ता गिट के साथ रिलीज डाउनलोड करने के लिए पर्याप्त परिष्कृत नहीं हैं; वे .tar.gz फ़ाइल को डाउनलोड और इंस्टॉल करना चाहते हैं। उनमें से कुछ हस्ताक्षर की पुष्टि भी कर सकते हैं।मैं जिथब पर "रिलीज" कैसे पोस्ट करूं?

उत्तर

23

GitHub सिर्फ अपने नए "GitHub रिलीज़" सुविधा की घोषणा की है, जो की तरह आप वास्तव में क्या कर रहे हैं लगता है ले लो के बाद:

https://github.com/blog/1547-release-your-software

+1

क्या किसी भी जीआईटी क्लाइंट से गिट कमांड का उपयोग करने का कोई तरीका है? – Royi

+0

यह बिल्कुल उपयोगी नहीं है, मुझे अभी भी यह समझ में नहीं आता कि रिलीज कैसे बनाया जाए, – Nulik

0

गिटहब Downloads section देखें - वहां से फ़ाइलों को डाउनलोड करने के लिए गिट की कोई ज़रूरत नहीं है।

+3

[अवमूल्यित] (https://github.com/blog/1302-goodbye-uploads), इसके बजाय [विज्ञप्ति] (https://github.com/blog/1547-release-your-software) का उपयोग करें। –

1

तुम इतनी तरह किसी भी टैग की एक टारबॉल लाने कर सकते हैं:

https://github.com/visionmedia/express/tarball/2.5.4 
6

एक अच्छा विकल्प GitHub का समर्थन करता है टैगिंग है, और स्वत: tar.gz/ज़िप उन टैग के आधार पर निर्माण। यह प्रकाशन रिलीज वास्तव में आसान बनाता है।

http://learn.github.com/p/tagging.html

प्रतिबद्ध/शाखा है कि आप एक रिलीज के रूप में चिह्नित करना चाहते हैं, उस पर तो

git tag <release_tag> 
तो

git push --tags 

करते हैं, github.com/user/ पर रेपो/टैग, आप सभी टैग की गई रिलीज देख सकते हैं। आप सीधे उन फ़ाइलों को लिंक कर सकते हैं, जैसे जिम के जवाब में।

+9

एक साधारण टैग के साथ दो समस्याएं हैं। # 1 - मैं डिजिटल रूप से इन '.tar.gz' रिलीज़ पर हस्ताक्षर नहीं कर सकता। # 2 - मेरे उपयोगकर्ताओं को 'कॉन्फ़िगरेशन' और 'लापता' और अन्य 'autoconf'-जेनरेटेड जंक की आवश्यकता है जो गिट रिपॉजिटरी में संबंधित नहीं है। – vy32

+0

@ vy32, अब आप पहली समस्या के लिए [एनोटेटेड टैग] (https://git-scm.com/book/en/v2/Git-Basics-Tagging#_annotated_tags) का उपयोग कर सकते हैं, और दूसरे के बारे में - एक [ गिट हुक] (http://githooks.com/) ऐसा करने के लिए –

1

आपको जो कुछ चाहिए उसे करने के लिए कुछ सुविधाएं हैं।

github_upload (Ruby) : https://github.com/github/upload 
App::gh (Perl) : https://metacpan.org/module/App::gh::Command::Upload 

अपने पिकअप :)

+0

दुर्भाग्यवश, github_upload स्क्रिप्ट अब काम नहीं कर रही है। – vy32

+0

मेरे पास एक समान उपयोग केस है जैसा कि आप करते हैं - लेकिन अभी तक इनमें से किसी भी टूल का उपयोग करने के लिए नहीं मिला है।'Github_upload' की स्थिति के बारे में जानना अच्छा है। शायद आप एक और शॉट पर्ल दे सकते हैं। 'Cpanm' का उपयोग करने का प्रयास करें और यह सभी निर्भरताओं को समझें। – mithun

6

अन्य भयानक विकल्प http://bintray.com से वितरित किया जा सकता है। यह integrates great with GitHub और बाइनरी वितरित करते समय आपको बहुत कुछ देता है।

2

मैं अन्य प्रकार की फ़ाइलों को अपलोड करना चाहता हूं (संकलित बाइनरी, ...) और कमांडलाइन से जीथब रिलीज को संपादित करने के लिए उपयोग में आसान टूल के साथ संपादित करना, मैंने इसके लिए कुछ बनाया है। इसे github-release कहा जाता है। यह मूल रूप से गीथूब रिलीज एपीआई पर उपयोगकर्ता के अनुकूल अमूर्त है। यह गो में लिखा गया है इसलिए मैंने इसे ओएसएक्स/लिनक्स/विंडोज/फ्रीबीएसडी के लिए क्रॉस-कंपाइल करने की स्वतंत्रता ली, और आप releases page से बिनरी डाउनलोड कर सकते हैं।

अस्वीकरण: मैं लेखक हूं।

+0

पढ़ने के बाद भी मुझे कुछ समझ में नहीं आया। बाइनरी रेपो के भीतर कहाँ रहता है? क्या मुझे इसमें फाइल के साथ एक और शाखा बनाना है? वास्तव में उलझन में – ThomasReggi

+0

यह एहसास नहीं हुआ कि आप सीधे रिलीज के लिए या github-release अपलोड कमांड के साथ बाइनरी अपलोड कर सकते हैं। – ThomasReggi

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