فایل gitignore مناسب برای جنگو
اگر در حال توسعهای پروژهای با فریمورک Django هستید و قصد دارید توسعهی خود را با گیت انجام دهید احتمالا نیاز دارید تا فایلهای غیر ضروری را در گیت آپلود نکنید تا بتوانید بدون تداخل در کار اعضای دیگر تیم مشغول به توسعهی پروژه شوید. در این نوشتهی کوتاه به شما کد کاملی را جهت قرار دادن در فایل gitignore پروژه خواهیم داد تا فایلهای موقتی یا فایلهایی که فقط مربوط به لوکال شما هستند را در مخزن پروژه آپلود نکنید.
فایل gitignore مناسب برای جنگو
برای استفاده از کد زیر کافیست فایلی با نام .gitignore در مخزن اصلی خودتان بسازید و از کد زیر در این فایل استفاده کنید:
# Django # *.log *.pot *.pyc __pycache__ db.sqlite3 media # Backup files # *.bak # If you are using PyCharm # # User-specific stuff .idea/**/workspace.xml .idea/**/tasks.xml .idea/**/usage.statistics.xml .idea/**/dictionaries .idea/**/shelf # AWS User-specific .idea/**/aws.xml # Generated files .idea/**/contentModel.xml # Sensitive or high-churn files .idea/**/dataSources/ .idea/**/dataSources.ids .idea/**/dataSources.local.xml .idea/**/sqlDataSources.xml .idea/**/dynamic.xml .idea/**/uiDesigner.xml .idea/**/dbnavigator.xml # Gradle .idea/**/gradle.xml .idea/**/libraries # File-based project format *.iws # IntelliJ out/ # JIRA plugin atlassian-ide-plugin.xml # Python # *.py[cod] *$py.class # Distribution / packaging .Python build/ develop-eggs/ dist/ downloads/ eggs/ .eggs/ lib/ lib64/ parts/ sdist/ var/ wheels/ *.egg-info/ .installed.cfg *.egg *.manifest *.spec # Installer logs pip-log.txt pip-delete-this-directory.txt # Unit test / coverage reports htmlcov/ .tox/ .coverage .coverage.* .cache .pytest_cache/ nosetests.xml coverage.xml *.cover .hypothesis/ # Jupyter Notebook .ipynb_checkpoints # pyenv .python-version # celery celerybeat-schedule.* # SageMath parsed files *.sage.py # Environments .env .venv env/ venv/ ENV/ env.bak/ venv.bak/ # mkdocs documentation /site # mypy .mypy_cache/ # Sublime Text # *.tmlanguage.cache *.tmPreferences.cache *.stTheme.cache *.sublime-workspace *.sublime-project # sftp configuration file sftp-config.json # Package control specific files Package Control.last-run Control.ca-list Control.ca-bundle Control.system-ca-bundle GitHub.sublime-settings # Visual Studio Code # .vscode/* !.vscode/settings.json !.vscode/tasks.json !.vscode/launch.json !.vscode/extensions.json .history
بعد از ذخیره سازی این فایل به طور کامل فایلهای غیرضروری توسط git نادیده گرفته میشود.
برای امتیاز به این نوشته کلیک کنید!
[کل: 2 میانگین: 5]



















آیا این فایل gitignore برای پروژههای بزرگتر با microservice هم جواب میده یا باید تغییر کنه؟
این فایل gitignore برای اکثر پروژههای جنگو مناسب است، اما برای پروژههای بزرگتر با معماری میکروسرویس، ممکن است نیاز به تنظیمات بیشتری داشته باشد.
برای پروژههایی که از celery استفاده نمیکنن، باز هم نیاز به خط مربوط به اون هست؟
خیر، اگر از Celery در پروژه خود استفاده نمیکنید، نیازی به اضافه کردن خط مربوط به آن در فایل .gitignore نیست. میتوانید آن خط را حذف کنید
آیا پوشه media رو همه باید ignore کنن یا بعضی وقتا لازمه نگه داشته بشه؟
پوشه media معمولاً حاوی فایلهای آپلود شده توسط کاربران است که نباید در گیت ذخیره شوند. در صورت نیاز به این فایلها، بهتر است از روشهای دیگری مانند ذخیرهسازی در سرویسهای ابری استفاده کنید.
اگه دیتابیس رو از sqlite به postgres تغییر بدیم، باز هم نیازی هست db.sqlite3 توی ignore باشه؟
اگر از دیتابیس دیگری غیر از SQLite استفاده میکنید، نیازی به اضافه کردن db.sqlite3 به فایل .gitignore نیست
آیا پوشه migrations هم باید به gitignore اضافه بشه یا نگه داشتنش لازمه؟
پوشه migrations معمولاً باید در git نادیده گرفته شود. این پوشه حاوی فایلهای موقتی است که در زمان اجرای پروژه ایجاد میشوند و نیازی به ذخیره شدن در مخزن نیست.