Настройка управления источником - PullRequest
1 голос
/ 24 ноября 2008

Я думал, что у меня дома будет установка Subversion для моих хобби-проектов, и я пытаюсь сделать это правильно, в первый раз (политики контроля исходных текстов моей работы или их отсутствие, ну, не идеально) .

То, с чем я борюсь, заключается в следующем: я хотел бы создать версию целых проектов Eclipse. Это будет хорошо с точки зрения Eclipse - я просто позволю ему делать свое дело, и это должно означать, что мне нужно игнорировать несколько двоичных / целых каталогов сборки и настроить их игнорирование только один раз при настройке проекта ?). Во всяком случае, я пробовал это пару раз, и SVN, кажется, запутался и игнорирует мои настройки игнорирования. Какой должна быть правильная процедура?

Спасибо.

PS Я делаю svn-биты из командной строки, пытаясь избежать GUI, пока я не доволен им.

Ответы [ 5 ]

2 голосов
/ 24 ноября 2008

Существует два основных способа предписать Subversion игнорировать файлы по имени или по шаблону.

Первый способ - найти файл конфигурации (местоположение зависит от платформы) и добавить имя файла или шаблон в список глобальных игнорируемых сообщений. Это относится ко всем операциям svn на машине или для этого пользователя.

Второй способ - установить свойство svn: ignore в версионном каталоге, например:

svn propedit svn:ignore myDirectory

Это вызывает редактор для свойства svn: ignore, куда вы можете добавить, например:

bin
obj
*.bak

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

Для получения дополнительной информации см. svn book .

1 голос
/ 24 ноября 2008

IIRC, Subversion не остановит вас от svn add файлов, которые вы пометили как проигнорированные, если вы явно добавите их по имени (хотя это может вас предупредить). Свойство svn: ignore в первую очередь используется для предотвращения их появления в svn status.

Кроме того, AFAIK, свойство svn: ignore не является рекурсивным, поэтому оно будет работать только с дочерними элементами первого уровня каталога, в котором он установлен.

0 голосов
/ 26 ноября 2008

Есть несколько способов добавить проекты в систему контроля версий. Вот описание более высокого уровня:

Один из способов - импортировать пустую папку верхнего уровня, затем svn checkout, затем скопировать файлы проекта в эту рабочую копию, затем svn добавить все файлы, кроме игнорируемых (или svn, отменить определенные файлы / папки) и установить игнорируйте свойства по желанию, затем фиксируйте.

Другой способ - сделать копию файлов проекта, вручную удалить файлы и папки, которые нужно игнорировать, а затем импортировать svn. Затем удалите эти файлы. Затем выполните svn checkout, затем установите свойства ignore для этой рабочей копии и svn commit. Затем скопируйте исходные пропущенные файлы / папки в рабочую копию.

Конечно, чем больше вещей, которые игнорируются глобально, тем легче будут эти шаги.

0 голосов
/ 25 ноября 2008

Не могли бы вы быть более понятным о том, что конкретно SVN запутывается? Помните, что свойство svn:ignore является настройкой для каждого каталога; То есть, если вы хотите игнорировать .foo файлы в ./bar и в ./bar/abc, вам нужно отредактировать свойство для каждого каталога. Да, это боль в заднице.

0 голосов
/ 24 ноября 2008

Если вы используете Linux, вы можете попробовать эти шаги, если на Windows, довольно, установщик сделает все за вас. https://help.ubuntu.com/community/Subversion

Также может помочь книга подрывной деятельности. http://svnbook.red -bean.com / о / 1,5 / index.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...