Как перенести существующий проект в SVN с помощью Eclipse Subclipse?

У меня есть существующий Java-проект в Eclipse:

MyProject/
    src/
        ... all main sources
    test/
        ... all test sources
    build.xml
    ... lots of other stuff

Теперь я хочу добавить этот проект (передать его все) в пустой trunk/ нового SVN-репо:

https://svn.example.com/MyProject/
    trunk/
        (Empty)

Итак, после фиксации репо теперь выглядит следующим образом:

https://svn.example.com/MyProject/
    trunk/
        src/
            ... all main sources
        test/
            ... all test sources
        build.xml
        ... lots of other stuff

Я установил плагин Subclipse.

В проводнике пакетов I:

  • Щелкните правой кнопкой мыши MyProject/
  • Team >> Share Project >> SVN >> https://svn.example.com/MyProject
  • Использовать указанное имя папки "trunk", чтобы теперь URL-адрес https://svn.example.com/MyProject/trunk
  • Нажмите "Готово"

Когда я делаю это, вместо фиксируя весь мой исходный код (содержащийся в MyProject) в trunk/ в репо, он перезаписывает (таким образом, checkout) MyProject/ с пустым каталогом!

Таким образом, Share Project, похоже, предназначен для проверки кода из репо, а не для ввода нового кода в репо в первый раз!

Как выполнить такую ​​начальную фиксацию с плагинами Subclipse и/или Eclipse Team?

Ответ 1

Поделиться проектом - это правильный вариант. Тем не менее, вы должны позволить ему создать папку соединительной линии. Процесс будет выполняться командой svn mkdir для создания папки соединительной линии. Затем он проверяет, что пустая папка в ваш проект (что совсем не влияет на ваш контент). На данный момент у вас теперь есть рабочая копия, которая является важной частью. Очевидно, что все ваше содержание проекта должно быть добавлено. На этом этапе ваш контент будет отображаться как "Неверсифицированный". Процесс запустит параметр синхронизации, чтобы дать вам шанс сделать это, хотя вы также можете просто сделать это через опцию Team > . Вам нужно использовать Add to Version Control для всего, что вы хотите добавить, а затем в конечном итоге выполнить его. Вы также можете игнорировать некоторые элементы, если хотите быть уверенными, что они никогда не выполняются.