Создать файл ссылки в SVN - PullRequest
       27

Создать файл ссылки в SVN

3 голосов
/ 21 сентября 2011

Я использую SVN в Windows XP.

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

Example: In a folder called "Templates"

File1.doc
File2.doc
File3.xls
File4.xls

Теперь я хочу, чтобы они были организованы в разные папки:

Templates\Type1
      File1.doc -> ..\File1.doc
      File2.doc -> ..\File2.doc
      File3.xls -> ..\File3.xls

Templates\Type2
      File1.doc -> ..\File2.doc
      File2.doc -> ..\File1.doc
      File3.xls -> ..\File4.xls

При изменении файлов в папке «Шаблоны» файлы в папках типа * указывают на правильный файл.

Как мне добиться этого в SVN? Есть ли другой альтернативный способ сделать это?

Ответы [ 2 ]

2 голосов
/ 21 сентября 2011

Посмотрите документацию Subversion по символическим ссылкам здесь .

Цитата со связанной страницы, выделение мое:

Управление версиями символических ссылок

На платформах, отличных от Windows, Subversion может создавать версии файлов символьной ссылки специального типа (или «символической ссылки»).Символьная ссылка - это файл, который действует как своего рода прозрачная ссылка на некоторый другой объект в файловой системе, позволяя программам косвенно считывать и записывать эти объекты посредством выполнения операций над самой символической ссылкой.

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

1 голос
/ 21 сентября 2011

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

Добавить свойство svn:external в папку, в которую хотите поместить ваши файлы. Свойство должно выглядеть следующим образом:

..\File1.doc  File1.doc
..\File2.doc  File2.doc
..\File3.xls  File4.xls

Первый столбец - это путь к исходному файлу.Второй столбец - это локальное имя файла.

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

...