আমি কীভাবে .pycফাইলগুলিকে উপেক্ষা করতে পারি ?
আমি .gitignoreএটিতে রাখলে কাজ হয় না। আমার উচিত তাদের যাতে ট্রেড করা যায় না এবং কমিটের জন্য পরীক্ষা করা হয় না।
আমি কীভাবে .pycফাইলগুলিকে উপেক্ষা করতে পারি ?
আমি .gitignoreএটিতে রাখলে কাজ হয় না। আমার উচিত তাদের যাতে ট্রেড করা যায় না এবং কমিটের জন্য পরীক্ষা করা হয় না।
উত্তর:
এটি ভিতরে রাখুন .gitignore। তবে gitignore(5)ম্যান পৃষ্ঠা থেকে:
· If the pattern does not contain a slash /, git treats it as a shell glob pattern and checks for a match against the pathname relative to the location of the .gitignore file (relative to the toplevel of the work tree if not from a .gitignore file). · Otherwise, git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag: wildcards in the pattern will not match a / in the pathname. For example, "Documentation/*.html" matches "Documentation/git.html" but not "Documentation/ppc/ppc.html" or "tools/perf/Documentation/perf.html".
সুতরাং, হয় যথাযথ *.pycপ্রবেশের সম্পূর্ণ পথটি নির্দিষ্ট করুন , অথবা এটি .gitignoreকোনও সংগ্রহস্থল থেকে অন্তর্ভুক্ত ডিরেক্টরি থেকে অন্তর্ভুক্ত ডিরেক্টরিগুলির একটি ফাইলের মধ্যে রাখুন।
আপনার সাথে একটি লাইন যুক্ত করা উচিত:
*.pyc
থেকে .gitignoreআপনার Git সংগ্রহস্থলের ট্রি রুট ফোল্ডারে ফাইল ডান সংগ্রহস্থলের আরম্ভের পরে।
যেমন র্যালফিথিনেঞ্জা বলেছিল, আপনি যদি আগেই এটি করতে ভুলে গিয়েছিলেন তবে আপনি যদি কেবলমাত্র .gitignoreফাইলটিতে লাইনটি যুক্ত করেন , সমস্ত প্রতিশ্রুতিবদ্ধ .pycফাইলগুলি এখনও ট্র্যাক করা হবে, সুতরাং আপনার সেগুলি সংগ্রহস্থল থেকে সরিয়ে ফেলতে হবে।
আপনি যদি লিনাক্স সিস্টেমে থাকেন (বা একটি ম্যাকোএসএক্সের মতো "পিতা-মাতা এবং পুত্র"), আপনি খুব দ্রুত এই এক লাইন কমান্ডের সাহায্যে এটি করতে পারেন যা আপনার সংগ্রহস্থলের মূল থেকে কার্যকর করা উচিত:
find . -name "*.pyc" -exec git rm -f "{}" \;
এর ঠিক অর্থ:
আমি বর্তমানে যে ডিরেক্টরিটি করছি সেখান থেকে শুরু করে, সমস্ত ফাইল সন্ধান করুন যার নামটি এক্সটেনশনের সাথে শেষ হয়
.pycএবং ফাইলের নাম কমান্ডে প্রেরণ করুনgit rm -f
*.pycগিট থেকে ফাইলগুলি ট্র্যাক করা ফাইল হিসাবে মুছে ফেলার পরে , এই পরিবর্তনটি সংগ্রহস্থলীতে প্রতিশ্রুতিবদ্ধ করুন এবং তারপরে আপনি শেষ পর্যন্ত ফাইলটিতে *.pycলাইন যুক্ত করতে পারেন .gitignore।
( http://yuji.wordpress.com/2010/10/29/git-remove-all-pyc/ থেকে অভিযোজিত )
আপনি সম্ভবত নির্বাণ আগে সংগ্রহস্থলের তাদের যোগ করেছেন *.pycমধ্যে .gitignore।
প্রথমে সেগুলি সংগ্রহস্থল থেকে সরান।
আমি একটি পূর্ববর্তী পোস্টের বাক্যটি ব্যবহার করার চেষ্টা করি এবং পুনরাবৃত্তির সাথে কাজ করি না, তারপরে কিছু সহায়তা পড়ুন এবং এই লাইনটি পান:
find . -name "*.pyc" -exec git rm -f "{}" \;
পিডি গিট ক্লিন বজায় রাখতে .gitignore ফাইলে * .pyc যুক্ত করা প্রয়োজন
echo "*.pyc" >> .gitignore
উপভোগ করুন।
উত্তরের জন্য ধন্যবাদ @ আমেরিকো
দ্রষ্টব্য আপনি যদি ভার্চুয়ালভ ব্যবহার করছেন তবে আপনি .pycবর্তমানে যে ডিরেক্টরিটিতে রয়েছেন তার মধ্যে আরও বেশ কয়েকটি ফাইল থাকবে যা তার ফাইন্ড কমান্ড দ্বারা ক্যাপচার করা হবে।
উদাহরণ স্বরূপ:
./app.pyc
./lib/python2.7/_weakrefset.pyc
./lib/python2.7/abc.pyc
./lib/python2.7/codecs.pyc
./lib/python2.7/copy_reg.pyc
./lib/python2.7/site-packages/alembic/__init__.pyc
./lib/python2.7/site-packages/alembic/autogenerate/__init__.pyc
./lib/python2.7/site-packages/alembic/autogenerate/api.pyc
আমি মনে করি এটি সমস্ত ফাইল সরিয়ে ফেলা নিষিদ্ধ, তবে আপনি যদি কেবলমাত্র .pycআপনার মূল ডিরেক্টরিতে থাকা ফাইলগুলি সরাতে চান তবে ঠিক করুন
find "*.pyc" -exec git rm -f "{}" \;
এটি app.pycগিট সংগ্রহস্থল থেকে কেবল ফাইলটি সরিয়ে ফেলবে ।