একটি এসভিএন শাখা মোছা হচ্ছে


91

আমি 'ফিচারস' নামে একটি এসভিএন প্রকল্পের একটি শাখা তৈরি করেছি এবং এখন যখনই আমি প্রকল্পটি আপডেট করার চেষ্টা করি তখন এটি একটি বৈশিষ্ট্যযুক্ত ফোল্ডার নিয়ে আসে, যা শাখা থেকে প্রকল্পের অন্য একটি অনুলিপি রাখে। পুরোপুরি ভাণ্ডার থেকে শাখাটি সরানোর কোনও উপায় আছে যাতে এটি আর না ঘটে?


উত্তর:


110

নিশ্চিত: svn rmঅযাচিত ফোল্ডার, এবং প্রতিশ্রুতিবদ্ধ।

ভবিষ্যতে এই পরিস্থিতি এড়াতে, আমি এসভিএন প্রকল্পগুলির জন্য প্রস্তাবিত বিন্যাসটি অনুসরণ করব :

  • আপনার কোডটি /someproject/trunkফোল্ডারে রাখুন (বা /trunkআপনি যদি কেবলমাত্র একটি প্রকল্পের সংগ্রহস্থল রাখতে চান)
  • হিসাবে শাখা তৈরি /someproject/branches/somebranch
  • অধীনে ট্যাগ রাখুন /someproject/tags

এখন আপনি যখন কোনও কার্যকরী অনুলিপি পরীক্ষা করেন, কেবলমাত্র trunkবা কোনও পৃথক শাখা পরীক্ষা করে দেখুন । না এক বিশাল কাজ সব শাখা ধারণকারী কপি সবকিছু চেক আউট।

1 আপনি কী করছেন তা যদি না জানেন তবে এক্ষেত্রে আপনি কীভাবে অগভীর কাজের অনুলিপি তৈরি করবেন তা জানেন।


58

এই শাখাটি বহিরাগত বা সিমলিংক নয় বলে ধরে নেওয়া, শাখাটি সরানো যতটা সহজ হবে:

svn rm branches/< mybranch >

svn ci -m "message"

আপনি যদি সংগ্রহস্থলটিতে এটি করতে চান তবে এটি আপনার কার্যকরী অনুলিপি থেকে অপসারণ করার জন্য আপডেট করুন আপনি এর মতো কিছু করতে পারেন:

svn rm http://< myurl >/< myrepo >/branches/< mybranch >

তারপরে চালান:

svn update

26
বইটি থেকে : "তবে একটি ইউআরএল মুছে ফেলা তাত্ক্ষণিক, সুতরাং আপনাকে [-m] সহ একটি লগ বার্তা সরবরাহ করতে হবে" svn rm -m message http://...এবং কোনও updateপ্রয়োজন নেই
rymo

57

টরটোইজএসভিএন ব্যবহারকারীদের জন্য , আপনি সংগ্রহের ব্রাউজারটি ব্যবহার করে এটি সম্পন্ন করতে পারেন (এটি প্রসঙ্গ মেনুতে "রেপো-ব্রাউজার" লেবেলযুক্ত))

কনটেক্সট মেনু

আপনি যে শাখা ফোল্ডারটি মুছতে চান তা সন্ধান করুন, এটিতে ডান-ক্লিক করুন এবং "মুছুন" নির্বাচন করুন।

ফোল্ডারটি মোছা হচ্ছে

আপনার প্রতিশ্রুতি বার্তা প্রবেশ করুন, এবং আপনি সম্পন্ন করেছেন।

প্রতিশ্রুতিবদ্ধ


আপনার ডিস্ক থেকে ফোল্ডারগুলি অপসারণের জন্য একটি এসভিএন আপডেট করুন (শাখা অপসারণের আগে মুছে ফেলা হয় না)
অ্যারিক্যানারি

12

আপনি সরাসরি রিমোটের শাখাটি মুছতে পারেন। এটি হয়ে গেলে, পরবর্তী আপডেটটি এটি আপনার কার্যকরী অনুলিপি থেকে সরিয়ে ফেলবে।

svn rm "^/reponame/branches/name_of_branch" -m "cleaning up old branch name_of_branch"

^হিসাবে 'SVN তথ্য' দেখা রিমোটের একবারে URL এর জন্য ছোট। উইন্ডোজ কমান্ড লাইনে ডাবল উক্তি প্রয়োজনীয়, কারণ ^এটি একটি বিশেষ চরিত্র।

আপনি কখনই শাখাটি পরীক্ষা করে না নিলে এই কমান্ডটিও কাজ করবে।


আমি এটি একটি ম্যাক থেকে ব্যবহার করেছি এবং এটি ভাল কাজ করেছে! যখন আমি শীর্ষের উত্তরটি চেষ্টা করলাম তখন আমি প্রতিক্রিয়া পেয়েছি "" / স্থানীয় / পাথ / থেকে / রেপো / শাখা / শাখা-নাম 'একটি কার্যকরী কপি নয় "সম্ভবত সম্ভবত আমি যে শাখাটি তৈরি করেছি তা চেক করতে পারিনি
ম্যাড বার্নার্ড

3

আপনি আপনার চেকআউটে যেমন অন্য কোনও মত ফিচার ফোল্ডার মুছতে পারেন তারপরে পরিবর্তনটি প্রতিশ্রুতিবদ্ধ।

ভবিষ্যতে এটি রোধ করার জন্য আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি এসভিএন লেআউটের জন্য নামকরণের সম্মেলনগুলি অনুসরণ করুন।

হয় প্রতিটি প্রকল্পের একটি ট্রাঙ্ক, শাখা, ট্যাগ ফোল্ডার তৈরি করা হয়।

svn
+ project1
  + trunk
    + src
    + etc...
  + branches
    + features
      + src
      + etc...
  + tags
+ project2
  + trunk
  + branches
  + tags

3

কাজের অনুলিপি থেকে:

svn rm branches/features
svn commit -m "delete stale feature branch"


3

একটি শাখা মুছে ফেলার আদেশ নিম্নরূপ:

svn মুছে ফেলুন -m "<আপনার বার্তা>" <শাখা url>

আপনি যদি পুরো রেপো সংগ্রহ / চেকআউট না করতে চান তবে আপনার টার্মিনালে নিম্নলিখিত কমান্ডটি প্রয়োগ করুন:

1) ডিরেক্টরিটির নিখুঁত পাথ পান যা আপনার কার্যকরী অনুলিপি
> পিডব্লিউডি
2 সহ থাকবে) 2 এসএনএন কোড চেকআউট
> এসএনএন চেকআউট <শাখা url> <বিন্দু 1 থেকে পরম পথ

উপরের পদক্ষেপগুলি আপনাকে শাখা ফোল্ডারের ভিতরে থাকা ফাইলগুলি দেবে এবং পুরো ফোল্ডারটি নয়।

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