Subversion: игнорировать изменения файла локально только на одном клиенте - PullRequest
51 голосов
/ 22 мая 2009

Можно ли игнорировать изменения файла в subversion локально только на одном клиенте, не распространяя игнорирование на весь репозиторий?

Особая проблема, с которой я сталкиваюсь, заключается в том, что я проверил проект и изменил несколько файлов, включая Makefile, который уже является частью репозитория. Теперь среда, над которой я работаю, отличается от остальной части группы, и я хочу, чтобы изменения в Make-файлах оставались локальными на моей машине и не были зафиксированы.

Однако я не хочу устанавливать svn: ignore, потому что, как я полагаю, это передаст игнорирование в репозиторий, в то время как важно сохранить файл make там.

Ответы [ 4 ]

38 голосов
/ 17 августа 2009

Как и во многих аспектах SVN, черепаха делает это действительно легко. На самом деле, я считаю, что черепаха на самом деле добавляет функции, систематически используя существующие функции SVN. Я понимаю, что этот ответ только для окон, но, возможно, некоторые люди там, как я, и до сих пор используют окна. Во всплывающем окне «Проверка изменений» просто щелкните правой кнопкой мыши свои файлы и выберите «Переместить в список изменений» -> «игнорировать при фиксации». Теперь, когда вы регистрируетесь с помощью черепахи, она сегментирует ваши изменения в различные списки изменений, так что вы по крайней мере можете визуально определить, что вы хотите зафиксировать, а что нет.

11 голосов
/ 22 мая 2009

если вы используете Subversion 1.5.x или выше, вы можете использовать списки изменений:

svn cl COMMIT /path/to/project/*

svn cl NOT_COMMIT /path/to/project/Makefile

Примечание: со второй командой Makefile будет удален из первого списка изменений. Вы можете игнорировать предупреждение.

Не фиксировать второй список изменений.

делать коммиты через:

svn ci --cl COMMIT -m"<LOG MESSAGE HERE>" 

Важно: Если вы фиксируете без опции --cl, ВСЕ ваши изменения будут зафиксированы

1 голос
/ 22 мая 2009

Самым близким безопасным решением, которое я могу придумать, является использование личной ветки.

0 голосов
/ 22 мая 2009

Используйте svn export для экспорта файла, чтобы он не контролировался версией.

http://svnbook.red -bean.com / о / 1,0 / re10.html

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

В данный момент я не могу проверить это, но поможет ли вам здесь редкая проверка?

http://svnbook.red -bean.com / ночной / о / svn.advanced.sparsedirs.html

...