Символическая ссылка в репозитории Subversion?

Я разрабатываю небольшое приложение как на PHP, так и на Java. Он имеет несколько фотографий, CSS и JS, которые должны быть разделены в обоих.

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

в Unix у нас есть символические ссылки, так что один и тот же файл/папка может "быть" в нескольких местах в файловой системе. В Subversion у нас есть svn copy, а затем оба экземпляра стать независимый. Я хотел сохранить их вместе, фиксация, сделанная в одной копии, будет применена и в" другой".

есть идеи, как это сделать?

2 ответов


Вы имеете в виду ссылки в вашем посте, а не "теневые связи" (я редактировал пост). Subversion может использовать символические ссылки версии, но другой способ сделать это (поскольку символические ссылки на данный момент не поддерживаются Subversion в Windows) - использовать внешние ссылки.

разница в том, что если вы используете Subversion external, у вас на самом деле будет две копии файла в вашей системе (которые указывают на одно и то же место в репозитории), тогда как символическая ссылка один файл в файловой системе.


вы не упомянули, как проекты выложены в svn, или как строится ваш Java-материал. Эти детали было бы неплохо добавить.

вы хотите изучить управление зависимостями-не символические ссылки. Как указывает @alroc, эта функция subversion не будет работать на некоторых платформах.

вы действительно не хотите svn:externals. Они плохо почти все время, и все время, если внешняя решает что-то в том же РЕПО. Это было покрыто совсем немного, принятый ответ здесь - это хорошее место для начала.

Я бы рекомендовал вам иметь РЕПО для java-приложения, РЕПО для php-материала, а затем, возможно, РЕПО для общего.

ваша сборка (java) и развертывание (php) могут затем разрешить соответствующую версию общих артефактов repos из репозитория(я рекомендую вам заглянуть в nexus или artifactory)