sariapro
4 سال پیش توسط sariapro مطرح شد
4 پاسخ

فایل composerlock برای چی ایجاد میشه

سلام دوستان

دارم روی یه پروژه لاراول کار می کنم (اولین تجربه عملی من هست) و اون رو روی گیت لب بردم که بتونم با سایر دوستان شیر کنم

یه فایل برای من ایجاد شده به اسم composer.lock که نمی دونم چی هست. ایا این رو باید پوش کنم؟ اصلا چرا خودش ایجاد شده؟


ثبت پرسش جدید
Muhammad
تخصص : Back-End Developer
@muhammad 4 سال پیش مطرح شد
2

سلام

When running composer install for the first time, or when running
composer update a lock file called composer.lock will be created. Lock
files always contain exact version numbers, and are useful to
communicate the version you tested with to colleagues or when
publishing an application.

https://stackoverflow.com/questions/10674641/composer-lock-how-does-it-work

وقتی برای اولین بار، دستور composer install یا composer update را اجرا کنید، فایلی به نام composer.lock ساخته می‌شود. فایل‌های lock. حاوی نسخه‌های دقیق Dependencyها هستند و برای تعامل نسخه‌هایی که شما تست کرده‌اید با شریکانتان مفید می‌باشند.

موفق باشید.


IrajJavidan
@IrajJavidan1 4 سال پیش مطرح شد
0

با سلام ‌و احترام
@sariapro
پیوند زیر:
http://bmbgk.ir/?q=What+is+composer.lock+file%3F


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
2

در پروژه های مدرن PHP همیشه از پکیج منیجر Composer استفاده میشه.
که با کامپوزر به بیش از ۷۰،۰۰۰ پکیجی که روی ریپازیتوری کامپوزر (packagist.org) هست دسترسی داریم

وقتی شما پروژه ای رو کلون میکنی و از composer install استفاده میکنی
کامپوزر به جز کپی کردن فایل ها به پوشه vendor و ساخت فایل autoload.php ...
همچنین یک رکورد از تمام وابستگی های پروژه رو در فایل composer.json ذخیره میکنه
که همین اتفاق در حین استفاده از composer update هم می‌افته

به طور کلی در شرایط زیر فایل composer.lock آپدیت میشه

  • استفاده از composer install برای دفعه اول
  • استفاده از composer install بعد از اضافه کردن وابستگی جدید به کامپوزر
  • استفاده از composer update و به روز رسانی وابستگی ها
  • استفاده از composer update package/name و به روز رسانی یک پکیج خاص

محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
1

همون طوری که دوستان اشاره کردند وظیفه اصلی این فایل تعیین نسخه دقیق پکیج های بکار رفته در پروژه هست و در پاسخ به سوالتون باید گفت بلی باید این فایل هم push بشود.

چون اگر بصورت تیمی کار می‌کنید مهم هست که به نحوی اطمینان حاصل کنید که تک تک اعضای تیم، از یک نسخه یکسان از پکیج ها استفاده می‌کنند. و این شرط صرفا با استفاده از فایل composer.json عملی نمی شود. بلکه نیازمند یک فایل تکمیلی بنام composer.lock هست.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام