আমি যখন 'গিট পুশ' করি তখন কি গিট হুকগুলি দূরবর্তী স্থানে ঠেলা যায়?


96

আমি যদি স্থানীয় রেপোজিটরিতে রেপো / .git / হুক্স / পোস্ট কমিটে একটি নতুন হুক স্ক্রিপ্ট তৈরি করি এবং তারপরে আমি "গিট পুশ" চালনা করি তবে কি হুকগুলি দূরবর্তী স্থানে চাপানো হয়? তারপরে, অন্য বিকাশকারীরা যখন একই উত্স থেকে "গিট টান" চালান তারা কি আমার নতুন হুকগুলি পাবে?



উত্তর:


82

হুকগুলি প্রতি-সংগ্রহস্থল এবং কখনও ধাক্কা দেওয়া হয় না। একইভাবে, রেপো কনফিগারেশনটি কোনওভাবেই ধাক্কা দেয় না, কিছুতে .git/infoবা অন্যান্য কিছুতেও নেই।

কেবলমাত্র শাখা / ট্যাগগুলি আদান-প্রদান এবং টেনে তোলা এবং প্রতিশ্রুতিবদ্ধ বস্তুগুলি (এবং কোনও প্রতিশ্রুতি থেকে উদ্ভূত যে কোনও কিছুই যেমন গাছ, ব্লাব)।


14
কেন্দ্রীয়ভাবে হুকগুলি রাখার এবং প্রতিটি ক্লোনটিতে সেগুলি টেনে আনার এবং প্রয়োগ করার কোনও উপায় আছে কি?
f1wade

4
@ f1wade আপনি এমন একটি .githooksডিরেক্টরি যুক্ত করতে পারেন যা সংস্করণটি নিয়ন্ত্রিত হবে তবে সিম-লিংক বা ভিতরে থেকে মোড়কের হুক স্ক্রিপ্ট তৈরি করতে পারে .git। ক্লোনিং স্বয়ংক্রিয়ভাবে তারে পরিণত হবে না .githooksতবে একবারে তারযুক্ত আপনি হুক স্ক্রিপ্টগুলির নতুন সংস্করণে চাপ দিতে এবং টানতে পারেন।
ফিলিপ কুলিং

48

না, গিট হুকগুলি ধাক্কা দেওয়া বা টানা হয় না, কারণ এগুলি সংগ্রহশালার কোডের অংশ নয়।

পড়ুন দয়া করে ডকুমেন্টেশন সহজ ক্লায়েন্ট-সাইড এবং সার্ভার সাইড আঙ্গুলসমূহ একটি তালিকার জন্য।

যদি আপনি সমস্ত ক্লায়েন্টদের জন্য কিছু হুক সক্ষম করতে চান যা প্রদত্ত সংগ্রহশালা থেকে ক্লোন করে বা টান দেয়, আপনার হুকগুলি আপনার কোডবেজে যুক্ত করতে হবে এবং তারপরে অনুলিপি করতে নিজের স্ক্রিপ্ট তৈরি করতে হবে বা এগুলি থেকে লিঙ্ক করতে হবে repo/.git/hooks/


4
তবে কীভাবে অনুলিপি স্ক্রিপ্ট কল করা হয়?
অ্যাডাম জনস

6
@ অ্যাডাম জোনস এটি ব্যবহারকারী / বিকাশকারী দ্বারা ডাকা হয়ে যায়, সম্ভবত একটি রুপে setup.shযা দেব যখন তারা প্রথমে সংগ্রহস্থলটি ক্লোন করেন তখন চালিত হয়। এর পরে, হুকগুলিতে আপডেটগুলি হুকের মাধ্যমে স্বয়ংক্রিয়ভাবে ঘটতে পারে যা প্রতিটি টানার পরে সেগুলি আপডেট করে একটি স্ক্রিপ্ট পুনরায় চালায়। সুতরাং আপনার নিজেরাই এটি বিকাশকারীদের উপর নির্ভর করতে হবে না।
সেমি 92

5

দুঃখজনকভাবে না তবে গিট ২.৯ থেকে আপনি এগুলিকে .গ্রন্থ বই ফোল্ডারে রাখতে পারেন (অন্যরা উল্লিখিত হিসাবে) এবং চালাতে পারেন:

git config --local core.hooksPath .githooks/

সুতরাং সিমলিঙ্ক বা অনুলিপি ফাইলের প্রয়োজন নেই।

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