এসভিএন সংগ্রহস্থল URL পরিবর্তন করুন


116

আমার বর্তমান এসভিএন কাঠামো:

Path: .
URL: svn://someaddress.com.tr/project
Repository Root: svn://someaddress.com.tr
Repository UUID: -------------------------------------
Revision: 10297
Node Kind: directory
Schedule: normal
Last Changed Author: ----
Last Changed Rev: 9812
Last Changed Date: 2010-12-20 17:38:48 +0100 (Mon, 20 Dec 2010)

তবে আমাদের প্রকল্প (অতএব এসভিএন পরিষেবা) এর sub.someaddress.com.trপরিবর্তে কাজ করবে someaddress.com.tr(someaddress.com.tr শীঘ্রই অন্য কোথাও পুনঃনির্দেশিত হবে)।

যেহেতু এটি ডেভলপমেন্ট সার্ভার, তাই আমি কী করব সে সম্পর্কে নিশ্চিত হতে পারিনি। আমার কি দরকার হবে svn switchনাকি svn switch --relocate? এছাড়াও, আমার কী এসএনএন রুট someaddress.com.tr বা প্রকল্প শাখা someaddress.com.tr/project স্যুইচ করতে হবে ?

উত্তর:


208

প্রদত্ত যে অ্যাপাচি সাবভার্সন সার্ভারটি এই নতুন ডিএনএস ওরফে স্থানান্তরিত হবে sub.someaddress.com.tr:

  • সাবভারশন ১.7 বা তারও বেশি সহ, ব্যবহার করুন svn relocate। এসভিএন সার্ভারের অবস্থান পরিবর্তন হলে পুনঃস্থাপন ব্যবহৃত হয়। switchআপনি যদি স্থানীয় লোকাল ওয়ার্কিং কপিটি অন্য শাখায় বা অন্য কোনও পথে পরিবর্তন করতে চান তবেই ব্যবহৃত হয়। কচ্ছপ এসভিএন ব্যবহার করে, আপনি কচ্ছপ এসভিএন ম্যানুয়াল থেকে নির্দেশাবলী অনুসরণ করতে পারেন । যদি এসভিএন কমান্ড লাইন ইন্টারফেস ব্যবহার করে থাকে তবে এসভিএন এর ডকুমেন্টেশনের এই বিভাগটি দেখুন । কমান্ডটি দেখতে এইরকম হওয়া উচিত:

    svn relocate svn://sub.someaddress.com.tr/project

  • /projectআপনার সংগ্রহস্থলের প্রকৃত বিষয়বস্তু সম্ভবত পরিবর্তন হবে না তা দিয়ে ব্যবহার চালিয়ে যান ।

দ্রষ্টব্য: svn relocateসংস্করণ 1.7 এর আগে উপলব্ধ নয় (তথ্যের জন্য কলিনমকে ধন্যবাদ)। পুরানো সংস্করণগুলিতে আপনি ব্যবহার করবেন:

    svn switch --relocate OLD NEW

36
এসএনএন স্থানান্তর পাওয়া যায় না 1.7 প্রাক। 1.7 svn switch --relocate OLD NEW
প্রাকের

অতিরিক্ত কচ্ছপ
এসভিএন

switchকমান্ডটি সম্পর্কে জানতাম না যে আমি অনলাইনে যে সমস্ত ডকুমেন্টেশন পেয়েছি তা নতুন সংস্করণগুলির জন্য।
ডাস্টিন কুক

যখন আমার এসএসএল ইউআরএল থেকে নন-এসএসএইচ বা এর বিপরীতে স্থানান্তরিত হওয়া দরকার তখন এটি কার্যকর হয়, উদাহরণস্বরূপ: এসএনএন সুইচ - আরলোকট এসএনএন + এসএসএইচ: // _ এসএনএন_সার্ভার _ / _ এসএনএন_প্রজেক্ট _ / _ এসএনএন_প্রাঞ্চ_ভিউএনএন: // _ এসএনএন_সারভার _ / _ এসএনএন_প্রজেক্ট _ / _ এসএনএন_রঞ্চ_ শেষটি বিশেষত সহায়ক যদি আপনি জেনকিনস এপিআই ব্যবহার করে বেশ কয়েকটি নোডে এসএনএন + এসএসএস হিসাবে স্বয়ংক্রিয় চেকআউট করেন এবং তাদের কয়েকটি (উইন্ডোজ নোড) এর এসএসএইচ নেই, তবে আপনাকে বিল্ড মেশিনে লগইন করতে হবে এবং ম্যানুয়ালি "এসএনএন আপডেট" করতে হবে কিছু দ্রুত সমাধান পরীক্ষা।
আলেকজান্ডার সাময়েলভ

11

ইউআরএল এর আগে এবং পরে গ্রিপ করা আপনাকে মনের প্রশান্তি দিতে পারে:

svn info | grep URL

  URL: svn://svnrepo.rz.mycompany.org/repos/trunk/DataPortal
  Relative URL: (...doesn't matter...)

এবং আপনার সংস্করণটি পরীক্ষা করা (এটি>> 1.7) যাচাই করা svn relocateসঠিকভাবে ব্যবহৃত জিনিস:

svn --version

শেষ অবধি, উপরের সাথে যুক্ত করে, যদি আপনার সংগ্রহস্থল ইউআরএল পরিবর্তনের সাথে প্রোটোকলের পরিবর্তনও জড়িত থাকে তবে আপনাকে ইউআরএল এর আগে এবং পরে বর্ণনা করার প্রয়োজন হতে পারে (এখানেও দেখুন )

svn relocate svn://svnrepo.rz.mycompany.org/repos/trunk/DataPortal
    https://svngate.mycompany.org/svn/repos/trunk/DataPortal

সমস্তই একক লাইনে অবশ্যই পরে নিন, এর পরে, ভাল অনুভূতি পান, যা সব সহজেই চলেছিল:

svn info | grep URL:

আপনি যদি এটির মতো অনুভব করেন তবে কিছুটা বেশি আত্মবিশ্বাস, নতুন এসএনএন রেপো URL সংযুক্ত এবং কাজ করছে:

svn status --show-updates
svn diff

5

আমার ক্ষেত্রে, svn relocateকমান্ডটি (পাশাপাশি পাশাপাশি svn switch --relocate) কোনও কারণে ব্যর্থ হয়েছে (সম্ভবত রেপো সঠিকভাবে সরানো হয়নি, বা অন্য কিছু)। আমি এই ত্রুটির মুখোমুখি হয়েছি:

$ svn relocate NEW_SERVER
svn: E195009: The repository at 'NEW_SERVER' has uuid 'e7500204-160a-403c-b4b6-6bc4f25883ea', but the WC has '3a8c444c-5998-40fb-8cb3-409b74712e46'

আমি পুরো সংগ্রহস্থলটি পুনরায় ডাউনলোড করতে চাইনি, তাই আমি একটি কাজের সন্ধান পেয়েছি। এটি আমার ক্ষেত্রে কাজ করেছে, তবে সাধারণত আমি কল্পনা করতে পারি যে অনেকগুলি জিনিস নষ্ট হয়ে যেতে পারে (তাই হয় আপনার কার্যকরী অনুলিপিটি ব্যাকআপ করুন, বা কিছু ভুল হয়ে গেলে পুরো রেপো পুনরায় চেকআউট করার জন্য প্রস্তুত থাকুন)।

রেপো ঠিকানা এবং তার ইউআইডি .svn/wc.dbআপনার কার্যকরী অনুলিপিতে এসকিউএল ডাটাবেস ফাইলে সংরক্ষণ করা হয় । কেবল ডাটাবেস খুলুন (উদাঃ এসকিউলাইট ব্রাউজারে), সারণী রেপোজিটরি ব্রাউজ করুন rootএবং এবং uuidকলাম মানগুলি নতুনতে পরিবর্তন করুন । জারি করে আপনি নতুন রেপোর ইউআইডি খুঁজে পেতে পারেন svn info NEW_SERVER

আবার এটিকে একটি সর্বশেষ উপায় হিসাবে বিবেচনা করুন।


@ আইগরগানাপলস্কি: আপনি কি আরও নির্দিষ্ট করে বলতে পারেন?
মার্টিন পেকা

1
আপনি যদি আমার পোস্টটি মনোযোগ সহকারে পড়েন তবে আমি কোনও কমান্ড চালানোর পরামর্শ দিচ্ছি না। আমি SQLite DB সম্পাদনা করার পরামর্শ দিচ্ছি।
মার্টিন পেকা

তবে এসকিউএলডি ডিবি সম্পাদনা করার সাথে চলমান কমান্ড জড়িত। এসকিউএল কমান্ড।
পিটার ফ্লাইন

দেখা যাচ্ছে আপনি স্ক্লাইট ব্যবহার করতে পারবেন না; প্রস্তাবিত হিসাবে আপনাকে স্ক্লাইটব্রোসর ব্যবহার করতে হবে। রহস্যময়।
পিটার ফ্লিন

1

আপনি যদি কোনও নতুন খালি রেপোতে প্রতিশ্রুতিবদ্ধ করতে চান তবে আপনি নতুন খালি রেপো চেকআউট করে নতুন রিমোট রেপোতে প্রতিশ্রুতিবদ্ধ করতে পারেন।
চেকআউট একটি নতুন খালি রেপো আপনার স্থানীয় ফাইলগুলি মুছবে না।
এটি ব্যবহার করে দেখুন: উদাহরণস্বরূপ, রিমোট রেপো url: https://example.com/SVNTest cd [YOUR PROJECT PATH] rm -rf .svn svn co https://example.com/SVNTest ../[YOUR PROJECT DIR NAME] svn add ./* svn ci -m"changed repo url"


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