2009-11-19 6 views
5

Я новичок в SVN, и я пытаюсь копию существующего проекта (только ствол) и создать новый проект в том же хранилище. Мы создаем одно и то же приложение для другой аудитории, поэтому я бы хотел скопировать существующую базу кода и создать новую базу кода. Я не хотел встраивать/теги, поскольку с этого момента они будут совершенно разными проектами, и я не заинтересован в сохранении истории и т. Д.,Копирование проекта в SVN

Это то, что я планировал сделать, но это выглядит как много Checkout/Commit, поэтому интересно, есть ли другой простой способ.

  1. Экспорт ствола существующего проекта (позволяет сказать 'Project1') из SVN для моего нового проекта (позволяет сказать project2) папку на C: \ Inetpub \ Wwwroot \ Проект2
  2. Создать новый проект SVN под названием 'Project2' и импорта все файлы из моего C: \ Inetpub \ Wwwroot \ Project2 к стволу
  3. Опять Checkout из Project2 SVN на моей локальной машине (C: \ Inetpub \ Wwwroot \ папка Проект2)

Папка Project1 огромна (~ 400 мб), так что это займет много времени. Есть ли другая альтернатива?

Я могу щелкнуть правой кнопкой мыши по папке магистрали Project1 в браузере репо Tortoise SVN и выбрать «Копировать в» и указать папку Trunk Project2, и он скопировал все файлы. Таким образом, я просто должен один раз проверять свою машину, и все готово.

Но я не уверен, правильна ли она или последствия этого. Любая помощь будет оценена по достоинству.

+2

Задача - избавиться от истории? В противном случае ветка была бы самым простым решением. –

+0

Я думаю, что-то, что нужно запомнить; как это имеет место в проекте .Net, переименование фундаментальной структуры проекта вызовет проблемы при компиляции/запуске проекта ... поэтому копирование отлично подходит для целей архивирования, но для дублирования/репликации проекта, который будет использоваться, становится немного беспорядочный. –

ответ

7

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

Вы можете просто использовать СВН скопировать

Это быстрый и простой способ, особенно если у вас есть большой репозиторий. Вы сохраните историю, но это хорошая вещь.

+0

Я бы пошел вперед и сохранил идею ветки.Таким образом, вы всегда будете знать, откуда появился настоящий код, когда он был расколот, и какие различия произошли с течением времени. – Chris

+3

Еще одно преимущество заключается в том, что 'svn cp' не создает еще 400 Мбайт файлов на сервере. Вы видите их как два разных проекта, но svn достаточно умен, чтобы хранить общий контент только один раз. – tato

1

Предполагая, что оба проекта находятся в том же хранилище, копия будет работать нормально - диверсия не реально увидеть файлы в хранилище, как ничего, кроме файлов/директорий - «ствол» на самом деле просто каталог с определенным именем, это не особый элемент или что-то еще.

1

Почему бы не просто скопировать его в svn? Он будет почти мгновенным и сэкономит много места на сервере. Это даст вам историю, но если это вас не интересует, просто не читайте ее.

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