সাবভারশন লোড "এ জাতীয় কোনও পুনর্বিবেচনা" ব্যর্থ হয়


18

আমি কীভাবে সাবভার্সন রেপো মাইগ্রেট করতে হয় তা শিখতে চেষ্টা করছি এবং এমন একটি বিষয় নিয়ে চলেছি যা আমার কাছে বোধগম্য নয়। আমি svndumpfilterএকটি উপ-প্রকল্প বিভক্ত করতে ব্যবহার করেছি এবং কিছু পথের উপসর্গ সরিয়েছি। বেশ কয়েকশ কমিট এখন সঠিকভাবে আমদানি করে তবে আমি নিম্নলিখিত ত্রুটিটি পেয়ে যাচ্ছি:

<<< Started new transaction, based on original revision 19190
     * editing path : branches/features/DynamicSource ... done.
     * editing path : branches/features/DynamicSource/src/build.properties ... done.
     * editing path : branches/features/DynamicSource/src/client/default.htm ...done.
     * editing path : branches/features/DynamicSource/src/client/js/AdHocController.js ... done.
     * editing path : branches/features/DynamicSource/src/client/js/Report.js ... done.
svnadmin: E160006: No such revision 19098
     * adding path : branches/features/DynamicSource/src/client/js/Enums.js ...

ঠিক আছে, তাই আমি ডাম্প ফাইলে চেহারায় পুনর্বিবেচনা 19190 এ যান এবং সব 19098. প্রথমত, রিভিশন 19098 করেন ডাম্প ফাইলের মধ্যে বিদ্যমান এবং একটি সমস্যা ছাড়া আমদানি করা হয়েছিল। সংশোধন 19190 একটি মার্জ। 19190-এর মধ্যে, এখানে এই শেষ ফাইলটির তথ্য, যা মনে হচ্ছে সমস্যাটি সৃষ্টি করছে:

Node-copyfrom-rev: 19100
Node-copyfrom-path: trunk/src/client/js/Enums.js
Text-copy-source-md5: 2db7f8d9c0ba4750d88ce0722731aad6
Node-path: branches/features/DynamicSource/src/client/js/Enums.js
Node-action: add
Text-copy-source-sha1: 8f930509f8dbc17c5e82cd40aa5a76454d3d812c
Node-kind: file
Content-length: 0

বিভ্রান্তিকরভাবে, সংশোধন 19100 এই ফিল্টার করা ফাইলটিতে বিদ্যমান নেই। কিন্তু ত্রুটিটি 19100 উল্লেখ করে না, এটি 19098 উল্লেখ করছে!

এই ফাইলটি লোড করতে আমি কী করব?

ধন্যবাদ!


যদি জটিল কিছু ("ডাম্প এবং ফিল্টার" এর পরে "আমদানি") ব্যর্থ হয় তবে প্রথমে সহজ কিছু চেষ্টা করুন ("ডাম্প", তারপরে "আমদানি করুন")। আমি কেবল কখনও পুরো একটি রেপো স্থানান্তরিত করেছিলাম এবং এটি সহজ-উদ্বেগজনক হয়েছিল।
ডার্ক এডেলবুয়েটেল

ধন্যবাদ, ডার্ক যদিও আমাদের সত্যিই এই রেপো বিভক্ত করতে হবে।
হারলান

হতে পারে "ডাম্প, আমদানি করুন Hand হাত কমানো, আবার ডাম্প করুন 2nd ?
ডার্ক এডেলবুয়েটেল

আমি যদি কিছু মিস করি না তবে আমি মনে করি না এসভিএন সেভাবে কাজ করে। আপনাকে ডাম্প ফাইল এবং সানডাম্পফিল্টার ব্যবহার কমাতে হবে। এবং আমরা যতটা সম্ভব ইতিহাস রাখতে চাই না।
হারলান

3
কেন গিট বা পার্কে মাইগ্রেশন করবেন না এবং একই ধাপে উত্তরাধিকার এসভিএন থেকে মুক্তি পাবেন?
ভোনব্র্যান্ড

উত্তর:


1

আমি এই জাতীয় বিভাজন বহুবার করেছি। আমি মনে করি এটি কীভাবে আপনি ফিল্টারটি ব্যবহার করেন এবং ডাম্প ফাইলে আপনি কী প্রক্রিয়াজাত করেন তার উপর নির্ভর করে। ব্যক্তিগতভাবে, আমাকেও প্রকল্পের পথের পাশে, এসএনএন ব্যবহারকারী এবং পরিবর্তনীয় পুনর্বিবেচনাগুলি পরিবর্তন করতে হয়েছিল। ঠিক তাই আপনি দেখতে পাচ্ছেন কী করা যায় তা এখানে আমার স্ক্রিপ্টের প্রাসঙ্গিক অংশ।

grp=$cust_group
usr=$cust_customer
svndumpfilter include $grp/$usr --drop-empty-revs --renumber-revs  <$repo_dump > $repo_dump.$usr
sed -e "s/Node-path: $grp\/$usr/Node-path: /" <$repo_dump.$usr >$repo_dump.$usr.fixed1
sed -e "s/Node-copyfrom-path: $grp\/$usr/Node-copyfrom-path: /" <$repo_dump.$usr.fixed1 >$repo_dump.$usr.fixed2
sed -e "/Node-path: /{ N; N; N; N; N; N; s/Node-path: \nNode-action: add\nNode-kind: dir\nProp-content-length: 10\nContent-length: 10\n\nPROPS-END//}" <$repo_dump.$usr.fixed2 >$repo_dump.$usr.fixed3
sed -e "/svn:author/{ N; N; s/svn:author\n.*\n$svn_usr_from/svn:author\nV $svn_usr_len\n$svn_usr_to/}" <$repo_dump.$usr.fixed3 >$repo_dump.$usr.fixed4
svnadmin load $repo_dir/$cust_group/$cust_customer --ignore-uuid < $repo_dump.$usr.fixed4

chown svn:svn -R $repo_dir/$cust_group/$cust_customer
#chown apache $repo_dir/$cust_group/$cust_customer/db/txn-current
#chown apache $repo_dir/$cust_group/$cust_customer/db/current
# apache is in svn group so the above 2 are not needed
chmod -R g+rw $repo_dir/$cust_group/$cust_customer

সেখানে যা ঘটে তা হ'ল প্রথমে, আমার যা প্রয়োজন তা ফিল্টার করে রাখি, স্পষ্ট কারণে আমি খালি সংশোধনগুলি ফেলে দিই এবং আমি এগুলি পুনরায় ফিরিয়ে আনি। এটি সুন্দর আদেশযুক্ত সংশোধনগুলি দেয়। তারপরে আমি প্রকল্পটির মূল পথটি ফেলেছি যা আমার ক্ষেত্রে গ্রুপ / গ্রাহকের আকারে ছিল কারণ নতুন রেপোতে যে কোনও ধারণা নেই (পরিবর্তে রেপো নিজেই গ্রুপ / গ্রাহক ডিস্কে রয়েছে) - এটি প্রথম 2 টি সেড

অনুসরণ করে, আমি নামবিহীন ডিরেক্টরিগুলির আমদানি সরিয়ে ফেলছি, যার মধ্যে একটি উপরোক্ত 2 টি গ্রুপের জন্য সিরের ফলাফল এবং তারপরে একটি গ্রুপ / গ্রাহক দির যোগ করার জন্য।

অবশেষে, আমি লেখককে এটিকে নতুন করে পরিবর্তিত করার জন্য সেড করেছি। সম্পত্তির সংজ্ঞাটির দৈর্ঘ্য আপডেট করার জন্য এটি প্রয়োজনীয় কিছুটা জটিলও ছিল।

তারপরে আমি এটিকে লোড করেছি এবং ফাইল সিস্টেমের অনুমতিগুলি ঠিক করেছি। অ্যাপাচে 2 টি মন্তব্য করা আবশ্যক নোট করুন, কিছু ক্ষেত্রে আপনার এটির প্রয়োজন হবে। আমি অবশেষে এসএনএন গ্রুপে অ্যাপাচি যুক্ত করে শেষ করেছি।

এখন, আমার এসভিএন রেপোতে আমি কখনই মার্জ করি নি তাই বিভক্ত হওয়ার জন্য আমাকে কখনই তাদের সাথে ডিল করতে হয়নি। আপনার ক্ষেত্রে, আমি কল্পনা করব যে যা ঘটে তা হ'ল উত্স পুনর্বিবেচনার পথটি আমদানি করা হয় না এবং সে কারণেই এটি ত্রুটিটি পুনর্বিবেচনাতে অভিযোগ করলেও এটি এটি খুঁজে পায় না)। এসএনএন আমদানি ফাইলে থাম্বের নিয়মটি হ'ল এক পর্যায়ে যা উল্লেখ করা হয় তা অবশ্যই উল্লেখ করার আগেই ইতিমধ্যে আমদানি করা উচিত। সুতরাং আপনি এমন কিছু ফিল্টার করে থাকতে পারেন যা আপনার করা উচিত নয়, আপনি চাইলেও বা ডাম্প ফাইলটি সঠিকভাবে আপডেট না করে আপনি যা কিছু পরিবর্তন করেছেন তা প্রতিবিম্বিত করতে।

আপনি মার্জ উৎস পথ সহ আপনার মূল রেপো,, প্লাস পরামিতি সঙ্গে আপনার কলের প্রাসঙ্গিক গঠন প্রদান তবে আমি পারে আপনি টেলিফোন করতে পারবেন কি আপনি মিস করা। আমার টাকা একীভূত হওয়ার উত্সে রয়েছে।


1

আমি একটি দুর্দান্ত সরঞ্জাম স্যান্ডম্প্যাম্পাইটিজার ব্যবহার করেছি । সমস্যাটি হ'ল সাবভার্শন সংগ্রহস্থল কাঠামোটি অত্যন্ত জটিল complicated যখন svndumpfilter 10 সংশোধন করা হয়, ব্যবহারকারী এটি জানাতে পারে না যে কোনও নোড ব্যবহারকারী বাতিল করতে চায়, এমন একটি অবস্থানে স্থানান্তরিত হবে যা তিনি পুনর্বিবেচনা 113 রাখতে চান So তাই এটি কেবলমাত্র এটিই করতে পারে - এটি নোডকে ছাড় দেয় , এবং পুনর্বিবেচনাতে ১১৩ টি ক্রপ আউট হয়ে গেছে কারণ এটি ইতিমধ্যে যে ডেটাটি এটির প্রয়োজন হবে তা সরিয়ে ফেলেছে।

স্বেন্ডম্প্যানসিটিজার একটি ভিন্ন উপায়ে কাজ করে। কোন নোডগুলি আসলে রাখা উচিত তা আবিষ্কার করতে এটি নোডগুলি বেশ কয়েকবার স্ক্যান করে। কোন নোডগুলি রাখতে হবে তা নির্ধারণ করার পরে আউটফাইলে কেবল এই নোডগুলি লিখে। অবশেষে - যদি প্রয়োজন হয় - এটি একটি প্রতিশ্রুতি যুক্ত করে যা কোনও অনাকাঙ্ক্ষিত নোড মুছে দেয় যেগুলি ভান্ডারটি না ভাঙ্গতে হবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.