సెమాంటిక్ వెర్షన్ అనేది క్రొత్త సాఫ్ట్‌వేర్ సంస్కరణల సంస్కరణ సంఖ్యను నిర్ణయించడానికి ఒక అధికారిక సమావేశం. ప్రతి క్రొత్త పంపిణీలో మార్పుల తీవ్రతను అర్థం చేసుకోవడానికి సాఫ్ట్‌వేర్ వినియోగదారులకు ప్రమాణం సహాయపడుతుంది.

సెమాంటిక్ వెర్షన్‌ను ఉపయోగించే ప్రాజెక్ట్ ఫైల్‌ను ప్రచారం చేస్తుంది గ్రేటర్, మైనర్ ఉంది ప్యాచ్ ప్రతి విడుదలకు సంఖ్య. వెర్షన్ స్ట్రింగ్ 1.2.3 సూచిస్తుంది a ఎక్కువ 1 యొక్క వెర్షన్, a మైనర్ 2 యొక్క వెర్షన్ మరియు యొక్క ప్యాచ్ సంఖ్య 3.

ఈ ఆకృతిని ఉపయోగించే సంస్కరణ సంఖ్యలు సాఫ్ట్‌వేర్ ప్యాకేజీలు మరియు అనువర్తనాలు మరియు ఆటల వంటి తుది-వినియోగదారు ఎక్జిక్యూటబుల్స్ రెండింటినీ విస్తృతంగా ఉపయోగిస్తాయి. అన్ని ప్రాజెక్టులు semver.org చేత సెట్ చేయబడిన ప్రమాణాన్ని ఖచ్చితంగా పాటించవు.

డిపెండెన్సీలుగా ఉపయోగించే సాఫ్ట్‌వేర్ ప్యాకేజీల మధ్య అస్థిరమైన సంస్కరణ పద్ధతుల వల్ల కలిగే సమస్యలను పరిష్కరించడానికి ఈ స్పెసిఫికేషన్ సృష్టించబడింది. “ప్యాకేజీ” మరియు “డిపెండెన్సీ” ద్వారా మేము మరొక సాఫ్ట్‌వేర్ ప్రాజెక్ట్‌లో ఉపయోగించాల్సిన కోడ్ లైబ్రరీని సూచిస్తాము మరియు ప్యాకేజీ మేనేజర్ పంపిణీ చేస్తారు npm, composer లేదా nuget. ఈ వ్యాసంలో మేము పరిశీలిస్తున్న సెమాంటిక్ వెర్షన్ యొక్క అనువర్తనం ఇది.

మేజర్, మైనర్ మరియు ప్యాచ్

పాల్గొన్న మూడు భాగాల అర్థాన్ని అర్థం చేసుకోవడం ముఖ్యం. కలిసి, వారు ఒక ప్రాజెక్ట్ యొక్క అభివృద్ధి మార్గాన్ని కనుగొంటారు మరియు ప్రతి క్రొత్త సంస్కరణ యొక్క తుది వినియోగదారుపై ప్రభావాన్ని వివరిస్తారు.

  • ఎక్కువ సంఖ్య – ప్రధాన సంఖ్య ప్యాకేజీ యొక్క పబ్లిక్ ఇంటర్ఫేస్ యొక్క ప్రస్తుత సంస్కరణను సూచిస్తుంది. మీరు మార్పు చేసిన ప్రతిసారీ మీ ప్యాకేజీ యొక్క ప్రస్తుత వినియోగదారులు వారి పనిని నవీకరించాల్సిన అవసరం ఉంది.
  • చిన్న సంఖ్య – చిన్న సంఖ్య సాఫ్ట్‌వేర్ యొక్క ప్రస్తుత ఫంక్షనల్ వెర్షన్‌ను వివరిస్తుంది. మీరు క్రొత్త కార్యాచరణను జోడించిన ప్రతిసారీ ఇది పెరుగుతుంది కాని మీ ప్యాకేజీ యొక్క ఇంటర్‌ఫేస్‌ను మార్చదు. గణనీయమైన మార్పు జరిగిందని వినియోగదారులకు తెలియజేయండి కాని ప్యాకేజీ మునుపటి చిన్న సంఖ్యతో పూర్తిగా వెనుకబడి ఉంటుంది.
  • ప్యాచ్ సంఖ్య – పబ్లిక్ ఇంటర్‌ఫేస్‌ను లేదా ప్యాకేజీ యొక్క మొత్తం కార్యాచరణను ప్రభావితం చేయని చిన్న మార్పు చేసిన ప్రతిసారీ ప్యాచ్ సంఖ్య పెరుగుతుంది. బగ్ ఫిక్సింగ్ కోసం ఇది సాధారణంగా ఉపయోగించబడుతుంది. వినియోగదారులు ఎప్పుడూ సంకోచం లేకుండా సరికొత్త ప్యాచ్ వెర్షన్‌కు అప్‌గ్రేడ్ చేయగలగాలి.

సెమాంటిక్ వెర్షన్ విడుదల నిర్మాణం చెట్టు వలె ఉత్తమంగా రూపొందించబడింది. ఎగువన, మీకు పబ్లిక్ ఇంటర్‌ఫేస్‌లో మార్పులు ఉన్నాయి, వీటిలో ప్రతి ఒక్కటి కొత్త ప్రధాన సంఖ్యకు దారితీస్తుంది. ప్రతి ప్రధాన శ్రేణి దాని స్వంత చిన్న సంస్కరణలను కలిగి ఉంది, దీనిలో క్రొత్త సంస్కరణలు మునుపటి సంస్కరణలకు అనుకూలంగా ఉండే విధంగా జోడించబడతాయి. చివరగా, చిన్న సంస్కరణలు ఎప్పటికప్పుడు బగ్ పరిష్కారాల కోసం పాచెస్ పొందవచ్చు.

ఎక్కడ ప్రారంభించాలి?

చాలా ప్రాజెక్టులు ఉపయోగించాలి 1.0.0 వారి ప్రారంభ సంస్కరణ వలె. మీరు మీ మొదటి పబ్లిక్ ఇంటర్‌ఫేస్‌ను మరియు మార్పులేని లక్షణాల ప్రారంభ సెట్‌ను ప్రచురిస్తున్నారు. మీరు ఇంకా ప్యాచ్‌ను సృష్టించాల్సిన అవసరం లేదు, కాబట్టి ప్యాచ్ వెర్షన్ 0.

ఇప్పుడు మీరు మీ ప్యాకేజీలో మార్పులు చేసినప్పుడు ఏమి జరుగుతుందో చూద్దాం. ప్రారంభ విడుదల తరువాత, మీరు వినియోగదారు నుండి బగ్ నివేదికను అందుకుంటారు. మీరు పరిష్కారాన్ని విడుదల చేసినప్పుడు, సరైన సంస్కరణ సంఖ్య ఉంటుంది 1.0.1. మీరు బగ్ పరిష్కారానికి మరొక సంస్కరణను సృష్టిస్తే, మీరు పాచెస్ సంఖ్యను పెంచుతారు 1.0.2.

ఈ సమయంలో, మీరు అద్భుతమైన క్రొత్త ఫీచర్‌పై కూడా పని చేస్తున్నారు. ఇది పూర్తిగా ఐచ్ఛికం, కాబట్టి వినియోగదారులు అప్‌గ్రేడ్ చేయడానికి ఏమీ చేయనవసరం లేదు. దీన్ని విడుదల చేయండి 1.1.0 – క్రొత్త ఫంక్షనల్ సిరీస్ సృష్టించబడింది మరియు మీరు ఇంకా దాన్ని రిపేర్ చేయలేదు. దురదృష్టవశాత్తు, బగ్ నివేదికలు త్వరలో వస్తాయి 1.1.1 మీ వినియోగదారులకు పంపబడుతుంది.

చాలా నెలల తరువాత, మీరు మొత్తం ప్రాజెక్టును రీఫ్యాక్టర్ చేయాలని నిర్ణయించుకున్నారు. మీరు అందిస్తున్న కొన్ని లక్షణాలు తొలగించబడ్డాయి లేదా ఇప్పుడు ఏకీకృత ఇంటర్ఫేస్ ద్వారా యాక్సెస్ చేయవచ్చు. మీరు ఈ పనిని విడుదల చేస్తే, మీ ప్యాకేజీ యొక్క ప్రస్తుత సంస్కరణను ఉపయోగించే వ్యక్తులు వారి ప్రాజెక్ట్‌లోనే పెద్ద మార్పులు చేయాలి. మీరు ప్రచురించే సమయం ఇది 2.0.0 ప్యాకేజీ రిపోజిటరీలో.

పాత శాఖల నిర్వహణ

సంస్కరణ స్ట్రింగ్‌లో సంఖ్యను నొక్కితే తిరిగి రాదు. ప్రచురణ తరువాత 1.1.1, మీరు కూడా ఉన్న బగ్‌ను కనుగొనవచ్చు 1.0.2. సోర్స్ కంట్రోల్ సిస్టమ్‌లో శాఖలను ఉపయోగించడం ద్వారా, మీరు రెండు వెర్షన్ సెట్‌లకు ప్యాచ్‌ను వర్తింపజేయవచ్చు. మీరు విడుదల ముగుస్తుంది 1.1.2 ఉంది 1.0.3.

అదేవిధంగా, మీరు ఫైల్‌ను కొనసాగించడం కొనసాగించవచ్చు 1.x విడుదల చేసినప్పటికీ మీ ప్రాజెక్ట్ యొక్క శాఖ 2.0.0. ప్రచురించడం వింతగా అనిపించవచ్చు 1.1.2 తరువాత 2.0.1 కానీ ఇది ఖచ్చితంగా ఆమోదయోగ్యమైన పద్ధతి. సెమాంటిక్ వెర్షన్ ఎప్పటికప్పుడు పెరుగుతున్న సరళ వెర్షన్ సంఖ్యను సృష్టించదు; బదులుగా, ఇది బ్రాంచ్ డెవలప్‌మెంట్ మోడల్‌లో భాగంగా ఉపయోగించటానికి ఉద్దేశించబడింది, ఇది గిట్ వంటి సోర్స్ కంట్రోల్ సిస్టమ్స్ అందించే పాచింగ్ సౌలభ్యాన్ని సద్వినియోగం చేస్తుంది.

ప్రచురించిన సంస్కరణలు మార్పులేనివిగా ఉండాలి. సంస్కరణను సృష్టించిన తరువాత, ఉదాహరణకు 2.4.3, ఒకే సంస్కరణ స్ట్రింగ్‌లో అదనపు కోడ్‌ను ఉంచడం ద్వారా దీన్ని “నవీకరించడం” సాధ్యం కాదు. మీరు ప్రతి సంస్కరణకు క్రొత్త సంస్కరణ సంఖ్యను కేటాయించాలి, తద్వారా వినియోగదారులు ప్యాకేజీ యొక్క ప్రతి నిర్దిష్ట పునర్విమర్శను ఎల్లప్పుడూ యాక్సెస్ చేయవచ్చు.

ప్రీ-రిలీజ్ ప్యాకేజీ నిర్వహణ

సాధారణంగా, మునుపటి సంస్కరణలతో సరిపడని మార్పు ప్రవేశపెట్టినప్పుడల్లా మీరు మీ ప్రాజెక్ట్ యొక్క ప్రధాన సంస్కరణను స్లామ్ చేస్తారు. మీరు ప్రీ-లాంచ్ స్థితిలో ఉన్నప్పుడు, మీ కోడ్‌బేస్ చాలా త్వరగా అభివృద్ధి చెందుతుంది, దీని ఫలితంగా పెద్ద విడుదలలు విడుదల అవుతాయి.

మీ ప్రాజెక్ట్‌ను ఇలా ప్రకటించడం ద్వారా మీరు దీన్ని నివారించవచ్చు 0.y.z మొదలు పెట్టుటకు. దత్తత తీసుకోవడానికి 0 ప్రధాన సంస్కరణ ప్యాకేజీ అస్థిరంగా ఉందని సూచిస్తుంది. వెనుకబడిన అననుకూల మార్పులపై సాధారణ నియమాలు ఇకపై వర్తించవు, కాబట్టి మీరు చిన్న మరియు ప్యాచ్ సంఖ్యలను మాత్రమే పెంచడం ద్వారా క్రొత్త సంస్కరణలను ప్రచురించవచ్చు. దీని అర్థం మీరు ఇప్పటికీ ఉపయోగించవచ్చు 1.0.0 సాఫ్ట్‌వేర్ యొక్క మొదటి “పూర్తయిన” సంస్కరణను లేబుల్ చేయడానికి.

సంస్కరణ స్ట్రింగ్ చివరలో మీరు అదనపు “ఐడెంటిఫైయర్‌లను” జోడించవచ్చు, హైఫన్‌ను సెపరేటర్‌గా ఉపయోగిస్తారు: 1.0.0-alpha.1. ఆల్ఫా మరియు బీటా వేరియంట్‌లను స్పష్టంగా సూచించడానికి మీరు దీన్ని ఉపయోగించవచ్చు. అదేవిధంగా, మీరు బిల్డ్ మెటాడేటాను దానితో జోడించడం ద్వారా చేర్చవచ్చు + పాత్ర: 1.1.0-alpha.1+linux_x86.

ముగింపు

సెమాంటిక్ వెర్షన్ యొక్క స్థిరమైన ఉపయోగం వినియోగదారులకు మీ ప్రాజెక్ట్ పై విశ్వాసం కలిగి ఉండటానికి సహాయపడుతుంది. మీ కోడ్ బేస్ ఎలా అభివృద్ధి చెందుతుందో వారు స్పష్టంగా చూడగలరు మరియు తాజాగా ఉండటానికి వారు స్వయంగా పని చేయాల్సిన అవసరం ఉందా.

జనాదరణ పొందిన ప్యాకేజీ నిర్వాహకులకు ప్రచురించేటప్పుడు సెమాంటిక్ వెర్షన్ స్ట్రింగ్‌ను ప్రకటించడం చాలా అవసరం. అయితే, ప్రతి కొత్త విడుదలకు ఏ సంఖ్యలను పెంచాలనేది చివరికి మీ నిర్ణయం. ప్రమాణానికి కట్టుబడి ఉండటం మీ ఉద్దేశాలను సమాజానికి స్పష్టంగా తెలియజేస్తుంది మరియు వేరొకరి పనికి అనుకోకుండా అంతరాయం కలిగించే ప్రమాదాన్ని తగ్గిస్తుంది.

Source link