গিট: সমস্ত ট্র্যাক করা ফাইল মুছবেন?


9

আমার কাছে একটি গিট রেপো এবং অন্য সম্পর্কযুক্ত ফাইল রয়েছে যা আমি ট্র্যাক করতে চাই না এমন একটি ডিরেক্টরি রয়েছে (এটি আমার হোম ডিরেক্টরি, এটি খারাপ অভ্যাস হলে দুঃখিত - বাশ প্রোফাইল এবং ভিআইএম ফাইল সংস্করণ করার বিকল্প প্রস্তাবনাগুলি স্বাগত!)

আমি সহজেই .git ডিরেক্টরিটি সরিয়ে ফেলতে পারি, তবে এটি আমার ডিরেক্টরিতে থাকা সমস্ত ট্র্যাকযুক্ত ফাইলের সাথে আমাকে ছেড়ে দেয়। আমি কীভাবে সমস্ত ট্র্যাক করা ফাইল মুছব যাতে আমি গিট রেপো এবং এর সম্পর্কিত ফাইলগুলি কার্যকরভাবে "আনলোনিং" বা "আনইনস্টল করা" মুছে ফেলতে পারি?

তদুপরি, এই ফাইলগুলি সরানোর পরে, আমি কীভাবে যে কোনও ডিরেক্টরিতে ট্র্যাক করা ফাইলগুলি ব্যবহার করে তবে এখন খালি রয়েছে তা কীভাবে সরিয়ে ফেলব?

সম্পর্কিত (বিপরীত প্রশ্ন): গিট: সমস্ত চিহ্নবিহীন ফাইলগুলি কীভাবে মুছবেন

উত্তর:


13

ফাইলগুলির জন্য আপনি গিট-আরএম পৃষ্ঠার প্রস্তাবিত কমান্ড-লাইনে আপনার কমান্ড লাইনটি সামান্য পরিবর্তন করতে চাইতে পারেন

git ls-files -z | xargs -0 rm -f

এটি আরও জটিল ফাইল পাথ সহ অনেক বেশি নিরাপদ। ডিরেক্টরিগুলির জন্য আপনি অনুরূপ কৌশল চেষ্টা করতে পারেন:

git ls-tree --name-only -d -r -z HEAD | sort -rz | xargs -0 rmdir 

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

ডিরেক্টরিটি মুছে ফেলার জন্য এটি পরিবর্তন করা সহজ হবে, বিষয়বস্তু যাই হোক না কেন।


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

আপনি পারে। তবে আমি যা ভাবছিলাম তা হ'ল আপনি সম্ভবত সেই ডিরেক্টরিগুলি সংরক্ষণ করতে চান যেগুলিতে সেগুলিতে নন-ট্র্যাক করা ফাইল রয়েছে। আপনি না থাকলে আপনি ডিরেক্টরিগুলি (rm -rf) মুছে ফেলার বিষয়ে আরও আক্রমণাত্মক হতে পারেন। যে কারণে আমি ভেবেছিলাম আপনি এটি করতে চাইবেন না তা হ'ল আপনি কেবল .git ডিরেক্টরিতে না থাকা সমস্ত ফাইল সরিয়ে ফেলতে পারেন।
andygavin

1

আপনি ট্র্যাকযুক্ত সমস্ত ফাইলের তালিকার জন্য গিটকে জিজ্ঞাসা করতে পারেন git ls-files। সুতরাং, নিম্নলিখিত কমান্ডটি ঠিক কাজ করা উচিত

git ls-files | xargs rm

ধন্যবাদ! খারাপ নয়, git ls-files | xargs -r rmএটিতে পরিবর্তিত হয়ে সাবমডিউলগুলিও মুছে ফেলা হয়। তবে আমি কীভাবে ট্র্যাকড ফাইলগুলি ধারণ করে খালি ডিরেক্টরিগুলি মুছব তবে এখন খালি? কাজ ডিরেক্টরি ভিতরে সমস্ত খালি ডিরেক্টরি মুছে ফেলা ছাড়া? (আমি এটি মূল প্রশ্নের সাথে যুক্ত করেছি)
ইলিয়াস করিম

: যেমন, আমার home ডিরেক্টরির এই চলমান পরে, আমি খালি তেজ কনফিগ ডিরেক্টরি অবশিষ্ট করছি .vim/bundle, .vim/colorsএবং.vim/syntax
ইলিয়াস করিম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.