আমি এমন একটি উত্তর চেষ্টা করতে চাই যাতে গিট-ফ্লো এবং তিনটি 'পয়েন্ট' বা ব্যবহারের ক্ষেত্রে, গিট কেন্দ্রীয় ভান্ডার, স্থানীয় উন্নয়ন এবং উত্পাদন মেশিন অন্তর্ভুক্ত থাকে। এটি ভাল পরীক্ষা করা হয় না ।
আমি অবিশ্বাস্যভাবে নির্দিষ্ট কমান্ড দিচ্ছি। বলার বদলে <your folder>
বলব /root/git
। আমি যেখানেই আসল কমান্ডটি পরিবর্তন করছি কেবল সেখানেই আমার নির্দিষ্ট সার্ভারের নামটি প্রতিস্থাপন করা হচ্ছে example.com
। আমি ফোল্ডারগুলির উদ্দেশ্যটি ব্যাখ্যা করব যাতে আপনি এটি অনুসারে এডজাস্ট করতে পারেন। দয়া করে আমাকে কোনও বিভ্রান্তির বিষয়ে জানান এবং আমি উত্তরটি আপডেট করব।
সার্ভারে গিট সংস্করণটি 1.7.1। সার্ভারটি সেন্টোস 6.3 (ফাইনাল)।
বিকাশ মেশিনে গিট সংস্করণটি 1.8.1.1। এটি ম্যাক ওএস এক্স 10.8.4।
কেন্দ্রীয় সংগ্রহস্থল এবং উত্পাদন মেশিন একই মেশিনে রয়েছে।
কেন্দ্রীয় সংগ্রহস্থল, যা svn ব্যবহারকারীরা 'সার্ভার' হিসাবে সম্পর্কিত হতে পারে নীচে কনফিগার করা হয়েছে। আমার একটি ফোল্ডার রয়েছে /root/git
যেখানে আমি আমার সমস্ত গিট সংগ্রহস্থল রাখি। আমি যে প্রকল্পকে 'ফুল' বলি তার গিট সংগ্রহস্থল তৈরি করতে চাই।
cd /root/git
git clone --bare flowers flowers.git
গিট কমান্ড দুটি বার্তা দিয়েছে:
Initialized empty Git repository in /root/git/flowers.git/
warning: You appear to have cloned an empty repository.
চিন্তার কিছু.
নিম্নলিখিত বিকাশ মেশিনে কনফিগার করা আছে। আমার একটি ফোল্ডার রয়েছে /home/kinjal/Sites
যেখানে আমি আমার সমস্ত প্রকল্পগুলি রেখেছি। আমি এখন কেন্দ্রীয় গিট সংগ্রহস্থল পেতে চাই।
cd /home/kinjal/Sites
git clone root@example.net:/root/git/flowers.git
এটি আমাকে এমন একটি জায়গায় পৌঁছে দেয় যেখানে আমি এতে স্টাফ যুক্ত করা শুরু করতে পারি। আমি প্রথমে গিট ফ্লো সেট আপ করেছি
git flow init -d
ডিফল্টরূপে এটি শাখায় রয়েছে develop
। আমি এখন এখানে আমার কোড যুক্ত করছি। তারপরে আমাকে কেন্দ্রীয় গিট সংগ্রহস্থল প্রতিশ্রুতিবদ্ধ করা দরকার।
git add .
git commit -am 'initial'
git push
এই সময়ে এটি বিকাশ শাখায় ঠেলাঠেলি করে। আমি এটি মাস্টার শাখায় যুক্ত করতে চাই।
git flow release start v0.0.0 develop
git flow release finish v0.0.0
git push
দ্রষ্টব্য যে আমি মুক্তির শুরু এবং প্রকাশের সমাপ্তির মধ্যে কিছুই করি নি। এবং যখন আমি মুক্তির কাজটি শেষ করি তখন আমাকে দুটি ফাইল সম্পাদনা করার অনুরোধ জানানো হয়েছিল। এটি বিকাশকারী শাখাকে মাস্টারকে ঠেলে দিয়েছে।
প্রোডাকশন সাইটে, যা আমার কেন্দ্রীয় গিট সংগ্রহস্থলের মতো একই মেশিনে রয়েছে, আমি সংগ্রহস্থলটি ভিতরে রাখতে চাই /var/www/vhosts/example.net
। আমি ইতিমধ্যে আছে /var/www/vhosts
।
cd /var/www/vhosts
git clone file:///root/git/flowers.git example.net
যদি প্রোডাকশন মেশিনটিও অন্য কোনও মেশিনে থাকে, git clone
কমান্ডটি উন্নয়ন মেশিনে ব্যবহৃত একটিটির মতো দেখায়।
git clone --bare
করবে আপনি যা ভাবেন তা করবে।