এসভিএন: ফোল্ডারটি ইতিমধ্যে সংস্করণ নিয়ন্ত্রণে রয়েছে তবে কমিট করছে না?


111
mark@mark-ubuntu:~/myproject$ svn stat
?       runserver.sh
?       media/images/icons
?       apps/autocomplete
mark@mark-ubuntu:~/myproject$ svn add apps/autocomplete
svn: warning: 'apps/autocomplete' is already under version control

svn statএটি সংস্করণ নিয়ন্ত্রণের অধীনে নেই বলে আমি এটিকে যুক্ত করার চেষ্টা করি এবং তারপরে এটি আমাকে বলে। আমি যখন এটি করি তখন svn ciতা কমিট হয় না এবং অনলাইনে সংগ্রহস্থলটিতে ব্রাউজ করার চেষ্টা করলে তা দেখা যায় না।

আমি কীভাবে এটি প্রতিশ্রুতিবদ্ধ হতে পারি?


3
"স্বতঃসম্পূর্ণ" ফোল্ডারে কি কোনও ভাঙা ".svn" উপ ডিরেক্টরি রয়েছে? এছাড়াও, আপনি পরিষ্কার করেছেন? :)
bzlm

1
আপনি কি একটি চেষ্টা করেছেন: এসএনএন ক্লিনআপ, অন্ধকারে কেবল ছুরিকাঘাত?
শানুহসাইন

আমি যখন আমার প্রকল্পের অন্য একটি ফোল্ডারে চেক ইন ডিরেক্টরিটি অনুলিপি করেছিলাম তখন আমি এই সমস্যাটিতে চলে এসেছি। পুরানো .svn কাজ মুছে ফেলা হচ্ছে!
পলরেহকুগেলার

আমি জোর করে ফাইল যোগ করা হয়েছে: svn add --force /path/to/file, অথবা আপনি ডিরেক্টরির যাও recursively যোগ করতে চান তবে: svn add --depth infinity --force /path/to/directory
জোকার

উত্তর:


162

কিছু ব্যাকআপ ডিরেক্টরিতে সমস্যাযুক্ত ফোল্ডারটি অনুলিপি করুন এবং এটি আপনার এসভিএন ওয়ার্কিং ডিরেক্টরি থেকে সরান। .svnঅনুলিপি করা ফোল্ডার থেকে সমস্ত লুকানো ডিরেক্টরি মুছতে ভুলবেন না।

এখন আপনার প্রকল্প আপডেট করুন, পরিষ্কার করুন এবং যা বাকী রয়েছে তা প্রতিশ্রুতি দিন। এখন আপনার ফোল্ডারটি কার্যক্ষম ডিরেক্টরিতে ফিরে যান, এটি যুক্ত করুন এবং প্রতিশ্রুতিবদ্ধ করুন। বেশিরভাগ সময় এই কর্মক্ষেত্রটি কাজ করে, মনে হয় মূলত এসভিএন বিভ্রান্ত হয়ে পড়েছে ...

আপডেট: @ মার্ক দ্বারা মন্তব্য উদ্ধৃত :

ফোল্ডারটি চারদিকে সরানোর দরকার নেই, কেবল .svnফোল্ডারটি মুছে ফেলা এবং তারপরে এটি এসএনএন-অ্যাডিংয়ের কাজ করে।


52
ফোল্ডারটি চারদিকে সরানোর দরকার নেই, কেবল .svnফোল্ডারটি মুছে ফেলা এবং তারপরে এটি এসএনএন-অ্যাডিংয়ের কাজ করে।
এমপেন

6
আমার দিন তৈরির জন্য +1 ;-) মার্ক যেমন বলেছিলেন, আমার জন্য সমস্যাযুক্ত ফোল্ডারের মধ্যে .svn ডিরেক্টরিগুলি সরিয়ে ফেলার জন্য এটি যথেষ্ট ছিল।
rturrado

23
সম্পূর্ণ বিএস হিসাবে এসভিএন সনাক্ত করার জন্য ধন্যবাদ।
স্টিভ কে

1
এখন আপনি কেবল শীর্ষ ফোল্ডারে .svn পেয়েছেন, আপনি এই বিএস করতে পারবেন না, যদি মেটাডেটা দূষিত হয় তবে আপনি টোস্ট করছেন
কল্পনা সনি

ইতিমধ্যে
কমিট করা

20

ডিরেক্টরি ট্রি যুক্ত করার পরে আমার একই ধরণের সমস্যা দেখা দিয়েছে যার মধ্যে .svn ডিরেক্টরি রয়েছে (কারণ এটি একটি সোভান: এর উত্স পরিবেশে বাহ্যিক): এসএনএন স্ট্যাটাস আমাকে "?" বলেছিল, তবে এটি যুক্ত করার চেষ্টা করার সময় এটি "ইতিমধ্যে" ছিল সংস্করণ নিয়ন্ত্রণে "।

যেহেতু অন্য সংস্করণযুক্ত ডিরেক্টরি উপস্থিত ছিল না, তাই আমি করেছি

find . -mindepth 2 -name '.svn' -exec rm -rf '{}' \;

ভুল .svn ডিরেক্টরিগুলি সরাতে; এটি করার পরে, আমি নতুন ডিরেক্টরি যুক্ত করতে সক্ষম হয়েছি।

দ্রষ্টব্য :

  • যদি অন্যান্য সংস্করণযুক্ত ডিরেক্টরি অন্তর্ভুক্ত থাকে তবে সন্ধানের এক্সপ্রেশনটি আরও নির্দিষ্ট করে তুলতে হবে
  • যদি অনিশ্চিত হয় তবে প্রথমে "-exec ..." অংশটি বাদ দিন তা দেখতে কী মুছে যাবে

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

আমি 'যদি অনিশ্চিত' থাকায় সুপারিশ করছি ... -exec echo {} \;যাতে আপনি নিজের-এক্সেক সুইচটিও ভালভাবে কাজ করতে পারেন।
ফ্লিপএমসিএফ

এছাড়াও -type dঅনুসন্ধানে একটি যুক্ত করার পরামর্শ দিন । আপনি rm -rfকিছুটা দূরে না যাওয়া পর্যন্ত আমাকে পিক কল করুন । আমার নিটপিক্স বাদে - আমি মনে করি এটি সঠিক উত্তর।
ফ্লিপএমসিএফ

15

@ Gauss256 এর উত্তরে একটি প্রকরণ , মুছে ফেলা .svn, আমার পক্ষে কাজ করেছে:

rm -rf troublesome_folder/.svn
svn add troublesome_folder
svn commit

গাউসের সমাধানের আগে আমি @ jwir3 এর পদ্ধতির চেষ্টা করেছিলাম এবং কোনও আনন্দ পাইনি:

svn cleanup
svn cleanup *
svn cleanup troublesome_folder
svn add --force troublesome_folder
svn commit

14

(1) এটি ঠিক আমার সাথে ঘটেছিল এবং আমি কীভাবে এটি হয়েছিল তা আকর্ষণীয় মনে হয়েছিল। মূলত আমি ফোল্ডারটি একটি নতুন অবস্থানে অনুলিপি করে এটিকে সংশোধন করেছিলাম, ভুলে গিয়েছিলাম যে এটি সমস্ত গোপনীয় .svn ডিরেক্টরিগুলি আনতে পারে। একবার আপনি বুঝতে পারছেন কীভাবে এটি ঘটে ভবিষ্যতে এড়ানো সহজ।

(২) .svn ডিরেক্টরিগুলি অপসারণ হ'ল সমাধান, তবে ডিরেক্টরি গাছের নীচে আপনাকে পুনরাবৃত্তভাবে এটি করতে হবে। এটি করার সহজতম উপায় হ'ল:

find troublesome_folder -name .svn -exec rm -rf {} \;

3

আপনি কি এসএনএন ক্লিনআপ করার চেষ্টা করেছেন?


2
Ive খুব এই সমস্যা মধ্যে দৌড়ে। তারপরে চেষ্টা svn cleanupকরেছিলাম এবং এটি তাতে কোনও সহায়তা করেনি।
ইম্যাকেক করুন

3

একটি ডিরেক্টরি 'অ্যাপ্লিকেশন / স্বতঃসম্পূর্ণ / .svn' দেখুন। এটিকে কোথাও নিরাপদে স্থানান্তরিত করুন (যদি আপনার এটি পুনরুদ্ধার করা প্রয়োজন কারণ এটি কাজ করে না) এবং দেখুন যে এটি সমস্যার সমাধান করে।


0

আপনি এসভিএন ক্লায়েন্ট জাভাএইচএল (জেএনআই) 1.8.13 এবং কচ্ছপের সাথে এক্লিপ্স (লুনা) ইনস্টল করার ক্ষেত্রে আমি একটি সমাধান পেয়েছি :

উদ্বোধনটি খুলুন: প্রথমে সংস্করণ নিয়ন্ত্রণে প্রকল্প / মাভেন মডিউল যুক্ত করার চেষ্টা করুন (প্রকল্প -> প্রসঙ্গ মেনু -> দল -> সংস্করণ নিয়ন্ত্রণে যুক্ত করুন)

আপনি নীচের Eclipse ত্রুটি বার্তা দেখতে পাবেন:

org.apache.subversion.javahl.ClientException: এন্ট্রি ইতিমধ্যে উপস্থিত রয়েছে svn: 'PathToYouProject' ইতিমধ্যে সংস্করণ নিয়ন্ত্রণে রয়েছে

এর পরে আপনাকে আপনার এক্সপ্লোরারটিতে আপনার কর্মক্ষেত্র ডিরেক্টরিটি খুলতে হবে, আপনার প্রকল্পটি নির্বাচন করুন এবং এটি কচ্ছপ (প্রকল্প -> প্রসঙ্গ মেনু -> কচ্ছপ এসভিএন -> সমাধান করুন) এর মাধ্যমে সমাধান করুন

আপনি নীচের বার্তা ডায়ালগ দেখতে পাবেন: " ফাইল তালিকা খালি "

Eclipse এ প্রকল্পটি বাতিল এবং রিফ্রেশ টিপুন। আপনার প্রকল্পটি আবার সংস্করণ নিয়ন্ত্রণে থাকা উচিত।

দুর্ভাগ্যক্রমে একই সাথে আরও একটি প্রকল্প সমাধান করা সম্ভব নয় ... আপনার প্রকল্পের আকারের উপর নির্ভর করে আপনাকে কিছুটা মুছতে হবে না এটি কিছুটা শ্রমসাধ্য হতে পারে।


0

আমার জন্য একটি এসএনএন আপডেট করার পরে এসএনএন কমিট কাজ করে। ফোল্ডারে কোনও .svn ফোল্ডার উপস্থিত ছিল যা যুক্ত করতে ব্যর্থ হয়েছিল।

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