গিটের প্রতিটি সংশোধনের জন্য প্রতিটি ফাইল কীভাবে তালিকাভুক্ত করবেন (যেমন মার্চিউরিয়ালের এইচজি ম্যানিফেস্ট - সমস্ত)?


10

ভান্ডারগুলিতে প্রতিটি সংশোধনীর জন্য থাকা প্রতিটি ফাইল তালিকাভুক্ত করার জন্য মার্চুরিয়ালের একটি কমান্ড রয়েছে:

hg manifest --all

গিটে সমমানের আদেশ আছে কি?


গিট লগের মতো কিছু - স্ট্যাট?
jmreicha

4
git ls-files?
এনএন

শুধু কৌতূহলী, কি কারণে আপনার এই প্রয়োজন?
স্টিফেন জেনিংস

@ স্টেফেনজেনিংস: মানসিকভাবে " ls -Rবিয়োগ .gitignore" করার চেয়ে সংস্করণ নিয়ন্ত্রণে কোন ধরণের ফাইল রয়েছে তা জানার এটি দুর্দান্ত উপায় । সাধারণভাবে উপযোগিতা: কী ঘটছে তা কম-বেশি-বেশি কেউ জানতে পারে, তবে সংগ্রহস্থলের অন্তঃসংশোধন একটি আত্মবিশ্বাস দেয় যা জানে। বিশেষত ব্যবহারকারীদের ক্ষেত্রে, এই ধরনের আত্মবিশ্বাসটি প্রোগ্রামটি ব্যবহার করা কতটা আনন্দদায়ক তার মধ্যে একটি বড় পার্থক্য করে। গিট তার ব্যবহারকারীদের আশ্বাস দেয়াকে অগ্রাধিকার দেয় না, এ কারণেই এত লোক এগুলি না শিখলে বোঝা যায় এটিকে ঘৃণা করে।
এস্তেইস

উত্তর:


3

আমি শেল স্ক্রিপ্টগুলিতে একেবারে ভয়ানক তাই এটি অবশ্যই যথাযথ উপ-অনুকূল, তবে এই ধরণের জিনিসটি আপনার পক্ষে এটি করতে পারে, ধরে নিই আপনি বাশ ব্যবহার করছেন। আশা করি অন্য কেউ এসে এটিকে পরিষ্কার করতে বা আরও ভাল কিছু দিয়ে প্রতিস্থাপন করতে পারে। আমি এটি কেবল আমার ম্যাকটিতে পরীক্ষা করেছি, তাই সাবধান হন।

কমিটগুলিতে সমস্ত ফাইল মুদ্রণ করা উচিত যা বর্তমান হেডের পূর্বপুরুষ। এটি manifest.shআপনার পথে কোথাও ডাকা একটি ফাইলে সংরক্ষণ করুন :

#!/bin/bash

TFILE=$(mktemp -t git-manifest)

for sha in $(git log --pretty=format:%H)
do
    git ls-tree --name-only --full-tree -r $sha >> $TFILE
done

sort -u $TFILE
rm $TFILE

1
exportএটি শিশু প্রসেসগুলিতে উপলব্ধ হওয়ার দরকার নেই বলে কোনও প্রয়োজন নেই । যদি লুপটি SHA হ্যাশগুলির ওপরে হয় তবে লুপটি ঠিকঠাকভাবে কাজ করে, অন্যথায় readভেরিয়েবলটি ব্যবহার এবং উদ্ধৃত করার কিছু ভাল be sortএকটি -uবিকল্প আছে যা করে uniqdoes rmআপনি অর্ধেকের মধ্য দিয়ে বাতিল করার পরে ফাইলটি ডি পাবেন না , আপনার এটির trapজন্য একটি প্রয়োজন হবে তবে এটি সম্ভবত এই স্ক্রিপ্টের জন্য অতিরিক্ত হবে।
ড্যানিয়েল অঙ্গুলিনির্দেশ

@ ড্যানিয়েলবেক: ধন্যবাদ, আমি এটিকে কিছুটা আপডেট করেছি। mktempগিট বাশে উপস্থিত নেই, আমার এটির মোকাবিলার একটি উপায় বের করা উচিত যাতে উইন্ডোজও খেলতে পারে।
স্টিফেন জেনিংস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.