2010-03-01 2 views
2

Это то, что я никогда не понимал в отношении управления версиями, в частности Subversion (единственный источник управления, который я когда-либо использовал, который не говорит много). Я рассматриваю возможность перехода на git или Mercurial, поэтому, если это повлияет на ответ на мой вопрос, пожалуйста, укажите как таковой.Как добавить в исходный код программно сгенерированные новые файлы?

Хорошо. Насколько я понимаю, каждый раз, когда я создаю новый файл, я должен сообщить SVN об этом, чтобы он мог добавить его в репозиторий и поместить его под контроль. Что-то вроде:

svn add newfile 

Это нормально, если я один создания файла: Я знаю, что я создал, я знаю его имя, я знаю, где он живет, так что легко сказать SVN об этом.

Но теперь предположим, что я использую какую-то структуру, например Rails, Django, Symfony и т. Д., И предположим, что я уже сделал начальную фиксацию. Все эти фреймворки создают новые файлы программно, часто много сразу, в разных каталогах и т. Д. И т. Д. Как я могу сообщить об исходном элементе управления этими новыми файлами? Нужно ли мне поохотиться каждый из них по отдельности и добавить их? Есть ли более простой способ? (Или я, возможно, неправильно понимаю что-то фундаментальное в отношении контроля источника?)

ответ

7

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

0

Я согласен с Мэтью в целом, если он может быть сгенерирован, его нельзя добавлять, но оставаться динамически созданным.

Для практического вопроса о добавлении нескольких файлов, я не помню в SVN (хотя я думаю, что это должно быть возможно), но сделать это в мерзавца:

  • Использование Git Баш (командной строки) вы можете добавить все «свободные» файлы в каталог или подкаталог, не указывая файл после команды добавления. Вы также можете установить git, чтобы игнорировать определенные файлы, поэтому они не будут добавлены в этом случае.

  • Другой способ использования git gui: он отображает все незаписанные файлы, и вы можете выбрать их все (или группы) и добавить их одним щелчком мыши.

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