क्या गिट रिपॉजिटरी के लिए एक नामकरण सम्मेलन है?


328

उदाहरण के लिए, मेरे पास खरीद सेवा नामक एक RESTful सेवा है। क्या मुझे अपने भंडार का नाम देना चाहिए:

  1. purchaserestservice
  2. purchase-rest-service
  3. purchase_rest_service
  4. या कुछ और?

अधिवेशन क्या है? Github में कैसे? क्या सार्वजनिक रिपॉजिटरी को कुछ मानक का पालन करना चाहिए?


4
इस ब्लॉग पोस्ट कुछ काम का हो सकता gravitydept.com/blog/...
PHeiberg

जवाबों:


379

मैं जाऊंगा purchase-rest-service। कारण:

  1. "पर्स चेस रेस्ट ervice" क्या है? लंबे, संक्षिप्त शब्दों को समझना कठिन है। मुझे पता है, मैं जर्मन हूं। "Donaudampfschifffahrtskapitänspatentausfüllungsassistentenausschreibungsstellenbewerbung।"

  2. "_" टाइप करने के लिए कठिन है "-"


151
मैं (वास्तव में) समझ में नहीं आया, लेकिन क्या आप में एस ... auschreibung याद नहीं किया ...?
विली

6
@adimauro: यह डेन्यूब स्टीमबोट के कप्तान पेटेंट के लिए फॉर्म भरने के लिए एक सहायक के रूप में एक खुली स्थिति के लिए एक आवेदन है।
हारून दिगुल्ला

6
कोई विशेष कारण आप ऊंट पसंद नहीं करते? यह मेरा गो-टू-कॉमन-आइटम नामकरण सम्मेलन है क्योंकि यह कोई विशेष वर्ण का उपयोग नहीं करता है।
10gistic

31
@ 10gistic रेपो नाम अक्सर URL में देखा जाता है (जैसे github पर) जो असंवेदनशील हो सकता है या इसे लोअर केस में भी बदला जा सकता है, और इस कारण से कैमलकेस एक बुरा विचार है। मुझे नहीं लगता कि गितुब ऐसा करता है, लेकिन फिर भी बचत करना बेहतर लगता है।
jdg

19
गिटहब में लोग हाइफ़न का उपयोग करते हैं। habrastorage.org/getpro/habr/post_images/d34/331/a8d/…
airato

72

ऊंट मामले के साथ समस्या यह है कि अक्सर शब्दों की अलग-अलग व्याख्याएं होती हैं - उदाहरण के लिए, चेकइनसेवा बनाम चेकइंसेल। हारून के जवाब के साथ जा रहे हैं, यह ऑटो-पूर्ति के साथ मुश्किल है अगर आपके पास कई समान नाम के रेपो हैं, तो लगातार जांचने के लिए कि क्या उस व्यक्ति ने रेपो बनाया है जिसे आप ऊपरी और निचले मामलों के एक निश्चित टूटने का उपयोग करते हैं। ऊपरी मामले से बचें।

डैश के बारे में उनकी बात भी अच्छी है।

  1. निचले मामले का उपयोग करें।
  2. डैश का उपयोग करें।
  3. विशिष्ट होना। आप पा सकते हैं कि आपको बाद में समान विचारों के बीच अंतर करना होगा - अर्थात सेवा या आराम-सेवा के बजाय खरीद-बाकी सेवा का उपयोग करें।
  4. निरतंरता बनाए रखें। विभिन्न जीआईटी विक्रेताओं से उपयोग पर विचार करें - आप कैसे चाहते हैं कि आपकी रिपॉजिटरी को क्रमबद्ध / समूहबद्ध किया जाए?

3
आपका उत्तर दो महत्वपूर्ण मुद्दों को छूता है जो शीर्ष उत्तर नहीं देता है।
विल बेंसन

4
यह कैसे भूल जाता है कि क्या यह चेकइन-सर्विस है या चेक-इन-सर्विस यह भूलने की तुलना में बेहतर है कि यह चेकइन सर्विस या चेकइन्स सर्विस है?
मैरेडेचेस

गैर-देशी वक्ताओं के लिए ऊंट का मामला भी कठिन है।
बेन एवलिंग

48

lowercase-with-hyphens वह शैली है जिसे मैं सबसे अधिक बार GitHub पर देखता हूं। *

lowercase_with_underscores शायद दूसरी सबसे लोकप्रिय शैली है जो मैं देख रहा हूं।

पूर्व मेरी प्राथमिकता है क्योंकि यह कीस्ट्रोक्स बचाता है।

* किस्सा; मैंने कोई डेटा एकत्र नहीं किया है।


8
हाइफ़न के एसईओ फायदे भी हैं। यह एक प्रमुख विचार नहीं हो सकता है, लेकिन जब से हम यूआरएल के बारे में बात कर रहे हैं, यह प्रासंगिक है।
माइकल स्काइपर

12
हाइफ़न का एक और लाभ भी है: वे रेखांकित हाइपरलिंक्स में स्पॉट करना आसान है (जहां अंडरस्कोर आसानी से रिक्त स्थान के लिए गलत हो सकते हैं)।
जेरोन

1
आपके द्वारा बताए गए अनुसार डेटा एकत्र करना मुश्किल है, लेकिन मैं github.com/trending/developers पर गया और केवल पूर्व शैली देखी जिसका उल्लेख किया गया है:lowercase-with-hyphens
SaTa

21

किसी भी विशेष नामकरण पसंद के बिना, याद रखें कि एक git रेपो को आपकी पसंद के किसी भी मूल निर्देशिका में क्लोन किया जा सकता है:

git clone https://github.com/user/repo.git myDir

यहाँ निर्देशिका repo.gitमें क्लोन किया जाएगा myDir

इसलिए, भले ही सार्वजनिक रेपो के लिए आपका नामकरण सम्मेलन थोड़ा गलत हो गया हो, फिर भी ग्राहक पक्ष पर इसे ठीक करना संभव होगा।

इसीलिए, एक वितरित वातावरण में, जहाँ कोई भी ग्राहक जो चाहे वह कर सकता है / कर सकता है, वास्तव में Git repo के लिए एक नामकरण सम्मेलन नहीं है।
( रेपो के नंगे रूप के xxx.gitलिए " " आरक्षित करने के अलावा ' ') REST सेवा के लिए नामकरण सम्मेलन हो सकता है (इसी तरह " REST APIs के लिए कोई भी नामकरण कन्वेंशन दिशानिर्देश हैं? "), लेकिन यह एक अलग मुद्दा है।xxx


4
अच्छी बात। हालाँकि, ग्राहक पक्ष में रेपो नाम को ठीक करने से यह साबित होता है कि नामकरण सम्मेलन मददगार होगा। क्या आपको नहीं लगता? अगर यह पहली जगह में एक सम्मेलन का पालन करता है तो इसे क्यों ठीक करें? शायद मावेन ने मुझे बहुत प्रभावित किया है।
एड्रियन एम

1
@ एड्रियनएम मेरी बात है: हां, एक नामकरण सम्मेलन उपयोगी है, लेकिन इसका Git या GitHub से कोई लेना-देना नहीं है, और आप उस विशेष रेपो के साथ जो करना चाहते हैं वह सब कुछ है। तो आपके प्रश्न का उत्तर "नहीं, git रिपॉजिटरी के लिए नामकरण सम्मेलन नहीं है"।
VonC

8

हो सकता है कि यह सिर्फ मेरा जावा और सी बैकग्राउंड दिखा रहा हो, लेकिन मैं नाम में विराम चिह्न पर कैमलकेस (कैपकेस) पसंद करता हूं। मेरा कार्यसमूह ऐसे नामों का उपयोग करता है, संभवतः ऐप के नाम से मेल खाने के लिए या जिसमें रिपॉजिटरी शामिल है।


6
यह पोस्ट विरल है और यह मेरी व्यक्तिगत प्राथमिकता नहीं है, लेकिन वह अभी भी एक लाभ का उल्लेख कर रहा है, कि जावा में परियोजना के नाम ऊंट मामले हैं और अनुरूपता में कुछ आराम है। क्या हम निश्चित हैं कि यहाँ की गिरावट सिर्फ एक नामकरण पूर्वाग्रह नहीं है?
eremzeit

1
माना। अन्य उत्तर कैमलकेस के नुकसान पर चर्चा करते हैं, लेकिन जावा दुनिया में, यह पूरी तरह से उचित होगा कि कैमकलेस को किसी भी तरह से बेहतर किया जाए ... विशेष रूप से विंडोज़ की दुनिया से अनभिज्ञ परियोजनाओं के लिए।
बजे माइकल शेपर

11
पीडिएटिक पब्लिक सर्विस की घोषणा: पास्कलकेस ऊंट नहीं है।
MarredCheese

0

यदि आप एक PHP पैकेज बनाने की योजना बनाते हैं, तो आप सबसे अधिक संभावना है कि इसे पैकगिस्ट में डाल सकते हैं ताकि यह संगीतकार के साथ अन्य के लिए उपलब्ध हो सके। संगीतकार का उपयोग करने के लिए नामकरण-सम्मेलन है vendorname/package-name-is-lowercase-with-hyphens

यदि आप JS पैकेज बनाने की योजना बना रहे हैं, तो आप शायद npm का उपयोग करना चाहते हैं। उनके नामकरण सम्मेलनों में से एक आपके पैकेज के नाम के बीच में ऊपरी मामलों के पत्रों को अनुमति नहीं देना है।

इसलिए, मैं पीएचपी और जेएस पैकेजों के लिए सिफारिश करूंगा कि वे lowercase-with-hyphensआपके पैकेज का उपयोग संगीतकार या एनपीएम के नाम से करें।

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