" আপনি কীভাবে গিট-মার্জ করে বেছে বেছে ফাইলগুলি একীভূত করবেন? " এই প্রশ্নের একটি বিকল্প হিসাবে , আমি সবেমাত্র এই গিটহাব থ্রেডটি পেয়েছি যা গিট রিড-ট্রি-এর উপর ভিত্তি করে একটি সম্পূর্ণ উপ - ডিরেক্টরিকে মার্জ করার জন্য আরও বেশি খাপ খাইয়ে নিতে পারে :
- আমার সংগ্রহস্থল =>
cookbooks
আমার সংগ্রহস্থল লক্ষ্য ডিরেক্টরি =>cookbooks/cassandra
- দূরবর্তী সংগ্রহস্থল =>
infochimps
রিমোট সংগ্রহস্থল উত্স আমি cookbooks/cassandra=> এ একত্রীকরণ করতে চাই intoinfochimps/cookbooks/cassandra
আমি তাদের একীভূত করার জন্য যে আদেশগুলি ব্যবহার করেছি তা এখানে
- সংগ্রহস্থল যোগ করুন এবং এটি আনুন
গিট রিমোট অ্যাড -ফ ইনফোকিম্পস গিট: //github.com/infochimps/cluster_chef.git
গিট একীভূত - নিবন্ধ-সম্পর্কহীন-ইতিহাস - আমাদের - না-প্রতিশ্রুতিবদ্ধ ইনফোকিম্পস / মাস্টার
(এটি 'আমাদের' কৌশলটি ব্যবহার করে মার্জ করে -s ours) ( যা উত্স শাখা থেকে পরিবর্তনগুলি বাতিল করে দেয় This infochimps/masterএটি লক্ষ্য শাখায় কোনও ফাইল সংশোধন না করেই একীভূত হওয়া সত্যটি রেকর্ড করে )
- শুধুমাত্র
infochimps/cookbooks/cassandraমধ্যে মার্জ করুনcassandra
গিট রিড-ট্রি - প্রিফিক্স = ক্যাসান্দ্রা / -উ ইনফোকিম্পস / মাস্টার: কুকবুকস / ক্যাসান্দ্রা
এটি কেবলমাত্র উত্স উপ-ডিরেক্টরি cookbooks/cassandraহিসাবে উত্স সংগ্রহস্থলের উজানের শাখায় গাছটি পড়ে ।
লক্ষ্য করুন যে টার্গেটের সাব-ডিরেক্টরী নামটিও হওয়া উচিত cookbooks/cassandra, বা আপনি দেখতে পাবেন:
fatal: Not a valid object name
গিট কমিট-এম 'ইনফোকিম্পস ক্যাসান্দ্রায় মার্জ করা'
সংযোজন
এটি উদ্ভট, [আমাকে সম্পাদনা করুন] - তবে read-treeপদক্ষেপটি সম্ভবত এইভাবে ব্যর্থ হতে পারে:
error: Entry 'infochimps/cookbooks/cassandra/README' overlaps with 'cookbooks/cassandra/README'. Cannot bind.
... উভয় ফাইল অভিন্ন হলেও । এটি সাহায্য করতে পারে:
git rm -r cassandra
git read-tree --prefix=cassandra/ -u infochimps/master:cookbooks/cassandra
তবে অবশ্যই, ম্যানুয়ালি যাচাই করুন যে এটি আপনার যা চায় তা করে।