راکت
حل شده

رفع مشکل متغیرها در انتقال از لوکال به هاست یا سرور با استفاده از گیت

6 پاسخ

با سلام و ادب.
ببخشید دوستان یکسری مقادیر مانند username, password دیتابیس و یا موارد دیگر است که خوب در لوکال با سرور و یا هاست متفاوت است، و ممکن است بعدا برای توسعه پروژه آدم سریعا و برای چندین برا بخواد بروژه را آپلود و یا push کند بر روی سرور، ولی هر بار باید این مقادیر را تغییر دهد. آیا راه حل بهتری با استفاده از git و یا موارد دیگر وجود دارد که یک بار این مقادیر درست شود و دیگر نیاز به تغییر نباشد؟

ثبت پرسش جدید

پاسخ‌ها

6
AriaieBOY
AriaieBOY
@ariaieboy

تخصص: TALL Stack Lover

بهترین پاسخ

به اینگونه متغیر ها توی محیط برنامه نویسی میگن enviorment variable یعنی متغیر های محیطی که توی هر محیطی به صورت جدا تعیین و تنظیم میشوند. شما میتونید از فریمورک های بزرگ مثل لاراول ایده بگیرید و این متغیر ها را داخل یک فایل جدا قرار بدید و سپس هرجا نیاز داشتید اونها را بخونید.
و خوب داخل گیت هم همیشه این فایل ها ignore میشه و فقط یک sample از اون داخل پروژه قرار داده میشه که بر اساس محیط اون فایل تغییر میدهند و مقادیر مربوطه را قرار میدهند.
خود لاراول از پکیج زیر استفاده میکنه:
https://github.com/vlucas/phpdotenv

حالا اینکه چجوری این فایل توی محیط پروداکشن ایجاد کنید بستگی داره به روند دپلوی شما که میتونه متفاوت باشه ولی خوب اگر از ci/cd استفاده بکنید و دپلوی اتومات داشته باشید میتونید خیلی راحت داخل اون یک اسکریپت بنویسید و فایل مربوط به پروداکشن در جای مناسب قرار بدید یا یک فایل ایجاد کنید و مقادیر داخلش بنویسید.

رضا پارسیان
رضا پارسیان
@Rp76

تخصص: توسعه دهنده Php , Laravel

سلام وقتتون بخیر!
من git ignore رو بهتون پشنهاد میدم

سجاد مومنی
سجاد مومنی
@sajadspeed

@Rp76
آهان بله ممنونم به ذهن خودمم رسیده بود ولی راه حل بهتری نیست؟ مثلا بتونم از برنچ‌ها برای حل مشکل استفاده کنم؟ یا بتونم قسمتی از یک فایل را فقط ignore کنم؟

شاید پاسخ شما همین‌جا باشد

moha li
moha li
@mohaligateway

تخصص: توسعه دهنده لاراول و Vue

سلام
ببینید دیتا بیس به گیت مربوط نمیشه. شاید من به درستی سوال شما رو متوجه نشده باشم. اگر می خواهید قسمتی از فایل را ignore کنید بهتره از git filters استفاده کنید.
@sajadspeed

رضا پارسیان
رضا پارسیان
@Rp76

تخصص: توسعه دهنده Php , Laravel

من هم ایدم اینه که

اطلاعات رو توی یک فایل دیگه بسازید و این فایل رو gitigonre کنید
و این فایل رو هم import کنید

سجاد مومنی
سجاد مومنی
@sajadspeed

آهان بله متوجه شدم خیلی ممنون از همه دوستان که پاسخ دادن 🌹🌹

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

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