2016-01-02 5 views
0

Я работаю над некоторой библиотекой, которую хочу поделиться через github. У меня есть задача gulp watch, которая объединяет все файлы моей библиотеки * .js в один и помещает их в папку build каждый раз, когда я делал изменения где-то в источниках. Так что в настоящее время в репозитории у меня есть оба источника и конкатенированный файл. Проблема с моим нынешним подходом заключается в том, что каждый раз, когда фиксация была сделана, ее можно увидеть дважды в истории - как изменение где-то в исходных файлах и как изменение файла сборки. Каков наилучший способ обработки таких библиотек в репозиториях git?сохранение источников и сбор файлов в git

+2

Возможный дубликат [Как обрабатывать скомпилированные файлы из предварительных процессоров в git-коммитах?] (Http://stackoverflow.com/questions/17970130/how-do-you-handle-compiled-files-from-pre -processors-in-git-commits) – helmbert

ответ

1

Я бы рекомендовал удаление каскадный файла JavaScript из хранилища мерзавца с помощью git rm {file.js}, а затем добавить этот файл в .gitignore С тех пор, вы должны совершать только изменения в файлы, которые вы фактически коснулись, и не отслеживать автоматически генерируемый файлы в git больше.

+0

, но тогда любой, кто когда-либо хотел бы использовать мою библиотеку, должен пройти процесс построения, который может стать сложным в будущем. – SET

+0

В общем, я не согласен с отслеживанием автогенерированных файлов. У вас должен быть файл README, в котором объясняется, как создать ваш репозиторий. Обычно разработчики используют «Makefile», и все, что нужно сделать пользователю, это запустить 'make' ... В общем, любой пользователь, загружающий репозиторий исходного кода, должен его создать, чтобы использовать продукт, поэтому заставить пользователя делать это не должно быть неожиданным. – mkrufky

+0

Я согласен с вами, но некоторые библиотеки, такие как [threejs] (https://github.com/mrdoob/three.js/), содержат сборки в своих хранилищах без необходимости отслеживать все, что они совершают, историю – SET

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