2017-02-13 5 views
2

Я выполнял проект, написанный в Laravel, который был интересен в использовании.GIT & Laravel останавливает определенные файлы

Установка, которую я использую, представляет собой конфигурацию Homestead для бродячих боксов, поэтому я выполняю большую часть своей работы на своей локальной машине и отжимаю сервер разработки, когда он готов к работе. Во время установки мне пришлось нажать на папку журналов &, чтобы она работала правильно, но теперь я нахожусь на этапе, когда каждое совершение, которое я делаю через командную строку, включает в себя storage/logs/laravel.log, который, когда я потом вытаскиваю его, спрашивает, чтобы я запустил/зафиксировал на сервере, потому что они разные.

Я добавил его в файл .gitignore в корневой директории проекта и это выглядит следующим образом:

/node_modules 
/public/storage 
/.idea 
Homestead.json 
Homestead.yaml 
/storage/logs/ 
/vendor/ 

Продавец не вызывает у меня никаких проблем, если я не вносить в него изменения так что его не очень беспокоиться, его просто журналы, которые не перестанут расти. Если я использую инструмент GUI, я могу вручную сказать, что он не поднимается, но я хочу, чтобы он дошел до того, что я могу использовать терминал, чтобы его подтолкнуть, и не беспокоиться о необходимости записи журналов на сервер.

Я считаю, что это то же самое для .env, поэтому я предполагаю, что решение будет работать для обоих. Я также заметил, что PHPStorm заявили, что они игнорируются, но отслеживаются git, если это помогает.

+0

Я думаю, что вы ищете файл '.gitkeep' в вашем каталоге' logs' и правило, чтобы игнорировать любые журналы там - 'logs/*. Log'. Вы не должны хранить файлы журналов версий. –

+0

.gitkeep не находится в папке/storage/logs, а другой игнорирует, должен ли я добавить его вручную, если есть ссылка, на которую я могу посмотреть? – Rlemm1991

ответ

1

Если вы посмотрите на репо Laravel на GitHub, вы найдете следующий .gitignore файл в каталоге хранения:

https://github.com/laravel/laravel/blob/master/storage/logs/.gitignore

Это приходит с установкой по умолчанию, чтобы пометить каталог журналов как игнорируется. Если вы удалили это по ошибке, вы сможете восстановить его и решить проблему, с которой вы столкнулись.

Столь же важно, однако, ваш рабочий процесс не соответствует лучшей практике. Что касается «Поставщик не вызывает меня и проблем, если я не вношу в него изменений» - вы должны никогда внесите изменения в каталог вашего поставщика. Эта папка является домом для сторонних пакетов и плагинов, их изменение напрямую вызывает несколько проблем, среди которых главные из них:

  1. Вы больше не можете обновлять измененный пакет, не нарушая приложению.
  2. Другие разработчики не смогут легко реплицировать вашу установку.

Фактически каталог поставщика не должен быть версией вообще. Лучший способ обработки файлов внутри него - использовать диспетчер пакетов, like Composer, чтобы сделать все это для вас. Это означает, что вы можете легко переключаться между различными версиями своих пакетов и, управляя версиями только файлов композитора, другие разработчики могут запускать composer install или composer update, чтобы быстро и точно синхронизировать свою среду разработки с вашими.

+0

Мои извинения, я, когда я имел в виду изменения, которые я имел в виду с файлом composer.json, который изменяет папку поставщика, хотя и оценил это предупреждение. – Rlemm1991

+0

Также отмечено, что/storage/log содержит git ignore, аналогичный приведенной ссылке: * !.gitignore – Rlemm1991

+0

А, композитор.json имеет гораздо больше смысла. Удалось ли вам игнорировать журналы, создав этот .gitignore? – Sheraz

Смежные вопросы