मैं एक विशेष परियोजना पर एक अकेला प्रोग्रामर किया गया है, लेकिन अब किसी और सहयोगी के रूप में शामिल हो गया है। साथ बस मुझे चित्र में, bundler
अपडेट चिकनी किया गया है, और मैंने कभी नहीं सोचा दो बार Gemfile.lock
के बारे में Git द्वारा लगाया जा रहा है।सहयोगी संदर्भ में बंडलर अपडेट (Gemfile.lock) से कैसे निपटें?
नए सहयोगी रेपो क्लोनिंग के बाद bundle install
भाग गया, और इस प्रकार Gemfile.lock
अद्यतन किया गया था:
Gemfile.lock
@@ -141,7 +141,7 @@ GEM
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
- thor (< 2.0, >= 0.14.6)
+ thor (>= 0.14.6, < 2.0)
raindrops (0.10.0)
rake (0.9.2.2)
rdoc (3.12)
@@ -164,7 +164,7 @@ GEM
sprockets (2.1.3)
hike (~> 1.2)
rack (~> 1.0)
- tilt (!= 1.3.0, ~> 1.1)
+ tilt (~> 1.1, != 1.3.0)
thor (0.16.0)
tilt (1.3.3)
treetop (1.4.10)
@@ -175,7 +175,7 @@ GEM
tzinfo (0.3.33)
uglifier (1.3.0)
execjs (>= 0.3.0)
- multi_json (>= 1.0.2, ~> 1.0)
+ multi_json (~> 1.0, >= 1.0.2)
unicorn (4.3.1)
kgio (~> 2.6)
rack
यह परिवर्तन एक नामित शाखा बंद मास्टर में धकेल दिया गया था। मुझे इस बदलाव से कैसे निपटना चाहिए?
जोर से सोच रहा है: क्या मैं गिटहब पर पुल अनुरोध मर्ज करता हूं? क्या मैं पहले बिना पुल अनुरोध के अपस्ट्रीम से खींचता हूं? क्या मैं अन्य सहयोगी के Gemfile.lock
के साथ चीजों को सिंक करने के लिए एक विशेष बंडलर कमांड चलाता हूं? वहाँ कुछ अन्य सहयोगी अलग ढंग से (बस जवाहरात मौजूदा Gemfile.lock
में निर्दिष्ट डाउनलोड करने के लिए नहीं बल्कि,) किया जा सकता है, ताकि वे किसी भी रत्न को अद्यतन करने का कारण नहीं है? इस स्थिति के आसपास सबसे अच्छा अभ्यास क्या हैं?
करने के बाद संस्करण नियंत्रण के तहत अपने Gemfile.lock सबसे अच्छा अभ्यास माना जाता है। यह सुनिश्चित करता है कि निर्भरता का एक ही बंडल बनाया जाएगा जहां भी आप अपना एप्लिकेशन इंस्टॉल करते हैं, भले ही यह स्रोत कोड पर काम करने वाला कोई अन्य डेवलपर हो या आपके उत्पादन सर्वर के लिए बंडल हो। – ianpetzer
सुनिश्चित करें कि आप दोनों एक ही बंडलर संस्करण का उपयोग करें ताकि जेनरेट किया गया Gemfile.lock समान दिखता है और चीजों को अलग-अलग उत्पन्न नहीं करता है जो एक झूठा अलार्म प्रतिबद्ध होगा – hammady