Рабочий процесс git + Flash Builder: как мне его настроить, чтобы git работал гладко? - PullRequest
9 голосов
/ 07 октября 2009

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

У меня настроено игнорирование всех каталогов .project и отладки Flash Builder через .gitignore:

.actionScriptProperties
.flexProperties
.metadata
.project
.settings
bin-debug

, а также обрабатывает любые файлы swf / swc как двоичные файлы через .gitattributes

*.swf -crlf -diff -merge
*.swc -crlf -diff -merge

Одной из проблем с этой настройкой является проверка этого проекта и использование это в Flash Builder с нуля:

Flash Builder не нравится, когда у вас есть папка проекта без файлы .project. Единственный способ Импортировать исходный код в Flash Builder можно по следующему адресу:

  1. Создание нового приложения Flex

  2. Задушить файлы шаблона создано (в частности, APP_NAME.mxml) с мерзким клоном.

Куда я могу поместить библиотеки? С точки зрения git, я бы хотел, чтобы они были в папке lib репозитория, поэтому, когда кто-то клонирует репозиторий, все просто работает, но из локального файла. Системная перспектива Я хотел бы хранить все свои библиотеки в одном месте и использовать Flash Builder для ссылки на них, так как я могу обновить библиотеку или скачать более позднюю версию. Может быть, я должен поместить библиотеки в свое собственное хранилище и загрузить их как модуль git? Таким образом, мне не нужно вручную не забывать обновлять файлы моей библиотеки Y во всех X-проектах, которые их используют, редактируйте: они будут просто обновляться, когда я обновляю подмодули каждого проекта.

А как насчет внешних модулей swfs / flex? Пока я вставляю внешние файлы swf в папку bin-debug, чтобы класс SWFLoader мог их найти, но поскольку я .gitignoring Папка bin-debug, они не поставляются с репо, когда он клонирован.

Последний вопрос - где хранить файлы для сервера . У меня есть они в отдельном репо? Я использую php VO 'с AMFPHP, поэтому хорошо иметь возможность редактировать php-файлы вместе с моими actionScript-файлами во Flash Builder ... но они не принадлежат папке проекта src.

Текущее решение, которое я использую:

  1. Создание папки 'server' в корневом каталоге проекта

  2. Указание на него виртуального хоста Apache

  3. Установка параметров запуска / отладки на http://APP_NAME.localhost

  4. Затем использование папки сервера в качестве замены bin-debug при экспорте файлов

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

Как настроить Git для плавной работы с Flash Builder? Может ли все это быть решено с помощью нескольких git-репозиториев / проектов Flash Builder или сценария ANT или чего-то еще?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 15 октября 2009

Я нашел хорошее решение , которое позволяет избежать всего ужаса отсутствия неотслеживаемых файлов и ведения массивного списка .ignore:

ОЧИСТИТЕ свои проекты перед тем, как сделать коммит.

Просто так.

Будь то Flash Builder или ant, у вас должна быть возможность очистки в любом случае, поэтому, если вы просто очистите перед фиксацией, проблема сгенерированных файлов решена. Duh.

На самом деле вы, вероятно, можете настроить его как git hook или что-то в этом роде.

1 голос
/ 08 октября 2009

Обычно для проектов затмения с любым SCM я сначала проверяю все, включая .projects и т. Д., Но, возможно, за исключением bin-debug в вашем случае. Затем просто убедитесь, что тот, кто проверяет проект, никогда не проверяет эти файлы .xxx. Например, когда я использую Perforce, я сначала извлекаю файлы .xxx в список изменений, который я никогда не проверяю. Затем извлекаю остальное в отдельный список изменений.

Еще один совет - использовать пользовательские переменные библиотеки при работе с путями сборки и т. Д.

...