2012-08-14 12 views
5

पर प्रकाशन को रोकें हम अपनी आंतरिक निर्भरताओं को पैकेज करने के लिए NuGet का उपयोग कर रहे हैं। हम इनके लिए एक निजी NuGet भंडार स्थापित कर रहे हैं।सार्वजनिक NuGet गैलरी

हालांकि, मुझे चिंता है कि कोई गलती से हमारे पैकेजों में से एक को सार्वजनिक NuGet भंडार में प्रकाशित कर सकता है।

क्या मैं इसे रोक सकता हूं?

उत्तर

-3

नहीं, आप नहीं कर सकते। और आपको जरूरत नहीं है।

आकस्मिक रूप से किसी व्यक्ति ने गलत सर्वर पर nuget पैकेज प्रकाशित करने का अर्थ है कि किसी के पास एक ही कई न्यूज सर्वरों के लिए एपीआई कुंजी है (मान लें कि आपकी स्थानीय गैलरी और nuget.org)। उस मामले की संभावना वही है जो Guid.NewGuid() दो बराबर GUID उत्पन्न करेगी। आपके स्थानीय न्यूजेट सर्वर के लिए एक और दूसरे के लिए सार्वजनिक nuget सर्वर पर पैकेज प्रकाशित करने के लिए दूसरा।

या गलती से वास्तविकता में "गलती से" का अर्थ है। कोई समाधान नहीं है।

+1

इसका मतलब यह भी हो सकता है कि API कुंजी SetApiKey आदेश का उपयोग कर जमा हो गया था। – user626528

+0

यह उत्तर सही नहीं है। आप setapikey कमांड को अनदेखा कर रहे हैं। – enorl76

1

आप NuGet.config फ़ाइल को DefaultPushSource के साथ परिभाषित कर सकते हैं जो आपके आंतरिक NuGet गैलरी इंस्टेंस को संदर्भित करता है। कॉन्फ़िगरेशन फ़ाइल को अपने आंतरिक पैकेज nuspec फ़ाइलों के बगल में रखें।

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <config> 
    <add key="DefaultPushSource" value="https://nuget.example.com" /> 
    </config> 
</configuration> 

सामान्य NuGet.config दायर करने के लिए फ़ोल्डर nuget.exe निकटतम जीत से चलाता है, अनुभाग नीचे दिए गए विवरण के माध्यम से चलता है।

NuGet पहले डिफ़ॉल्ट स्थान से NuGet.config लोड करता है, फिर वर्तमान ड्राइव की रूट से शुरू होने और वर्तमान निर्देशिका में समाप्त होने वाली NuGet.config नामक किसी भी फ़ाइल को लोड करता है।

Chaining multiple configuration files

NuGet कॉन्फ़िग चूक फ़ाइल भी डिफ़ॉल्ट पुश स्रोत के विनिर्देश अनुमति देता है। अगर कोई nuget.exe के कमांड लाइन तर्क में प्रदान नहीं किया गया है तो यह डिफ़ॉल्ट पुश स्रोत होगा। NuGet Config Defaults फ़ाइल में निर्दिष्ट डिफ़ॉल्ट पुश स्रोत के बिना, nuget.org डिफ़ॉल्ट nuget.exe पुश स्रोत है। हालांकि नई कॉन्फ़िगरेशन का उपयोग करना, व्यवस्थापक डिफ़ॉल्ट पुश स्रोत को एक आंतरिक पैकेज सॉर में बदल सकते हैं। यह nuget.org पर संकुल के आकस्मिक प्रकाशन को रोकने में मदद करेगा।

Default NuGet.exe Push Source

+0

दुर्भाग्यवश यह नए ग्राहकों के साथ काम नहीं करता^3.0 – enorl76