Как добавить существующую папку с файлами в SVN?
Как добавить папку без контроля версий в определенное место SVN? Я часто начинаю писать код, и только после того, как у меня есть несколько папок, содержащих файлы кода, я добавляю его в SVN.
Что я обычно делаю это:
- svn co родительский каталог, в котором я хочу создать новую папку для хранения моего кода.
- svn mkdir чтобы сделать каталог, в который я хочу поместить свой код.
- скопируйте и вставьте мой код свыше.
- svn commit.
- удалить текущий каталог рабочего кода.
- восстановить мой рабочий каталог, используя код svn co.
6 ответов
Допустим, у меня есть код в каталоге ~/local_dir/myNewApp
и я хочу поставить его под 'https://svn.host/existing_path / myNewApp' (при этом можно игнорировать некоторые двоичные файлы, библиотеки поставщиков и т. д.).
- создайте пустую папку в репозитории
svn mkdir https://svn.host/existing_path/myNewApp
- перейдите в родительский каталог проекта,
cd ~/local_dir
- Проверьте пустой каталог над локальной папкой. Не бойтесь-файлов у вас локально не будет удаленный.
svn co https://svn.host/existing_path/myNewApp
. Если ваша папка имеет другое имя локально, чем в репозитории, вы должны указать его в качестве дополнительного аргумента. - видно, что
svn st
теперь покажет все ваши файлы как?
, что означает, что в настоящее время они не находятся под контролем ревизии - выполнить
svn add
на файлы, которые вы хотите добавить в репозиторий, и добавить другиеsvn:ignore
. Вы можете найти некоторые полезные варианты сsvn help add
, например--parents
или--depth empty
, когда вы хотите выборочно добавить только некоторые файлы/папки. - коммит с
svn ci
Если я правильно понял, в вашем случае, я предлагаю попробовать использовать svn добавить поставить новую папку под версию см. здесь. Следующая добавит новую папку с файлами рекурсивно под контролем версий (если вы находитесь внутри допустимой рабочей копии):
svn add new_folder
svn commit -m "Add New folder to the project"
Если вы не находитесь в рабочей копии, создайте ее с помощью svn checkout, скопируйте new_folder там и выполните вышеуказанные шаги.
или
попробовать импорт СВН см. здесь; следующее создаст новую папку и загрузит файлы в репозиторий:
svn import -m "Import new folder to the project" new_folder \
http://SVN_REPO/repos/trunk/new_folder
Также обратите внимание, что:
после импорта данных обратите внимание, что исходное дерево не находится под версией управление. Чтобы начать работать, вам все равно нужно svn checkout свежий рабочая копия дерева
Я не использую команды. Вы должны быть в состоянии сделать это с помощью GUI:
- щелкните правой кнопкой мыши пустое место в папке Мои Документы, выберите TortoiseSVN > Repo-browser.
- Enter http://subversion... (Ваш URL-путь к вашему серверу/каталогу Subversion, который вы сохраните) в качестве пути и выберите OK
- щелкните правой кнопкой мыши корневой каталог в репо и выберите Добавить папку. Дайте ему название вашего проекта и создайте он.
- щелкните правой кнопкой мыши папку проекта в репо-браузере и выберите оформить заказ. Каталог Checkout будет вашим . Выберите OK.
- вы получите предупреждение о том, что папка не пуста. Скажи да оформить заказ/экспорт в эту папку - он не будет перезаписывать файлы проекта.
- открыть папку проекта. Вы увидите вопросительные знаки в папках, которые связаны с вашим VS project, которые еще не добавлено в Subversion. Выберите эти папки с помощью Ctrl + Click, затем щелкните правой кнопкой мыши один из выбранных элементов и выберите TortoiseSVN > Добавить
- выберите OK в приглашении
- ваши файлы следует добавить. Выберите OK на Добавить готово! диалоговое окно
- щелкните правой кнопкой мыши в пустой области папки и выберите Обновить. Вы увидите значки " + " в папках/файлах, теперь
- щелкните правой кнопкой мыши пустую область в папку еще раз и выберите SVN Commit
- добавьте сообщение о том, что вы совершаете, и нажмите OK
Если намерение добавляет локальную / рабочую копию в SVN, я использовал для этого следующий способ.
Примечание: я использую в TortoiseSVN client и эти шаги предполагают, что у вас уже установлен клиент TortoiseSVN.
- у меня есть проект (Test-4.2.2) в моем локальном. Я хочу загрузить / добавить его в репозиторий SVN.
- используя РЕПО-браузер TortoiseSVN, я создал пустой каталог "Test-4.2.2"
- в моем местном я переименовал существующий каталог" Test-4.2.2 "в" Test-4.2.2.1 " (временный)
- Проверьте пустой "тест-4.2.2" от SVN до вашего локального
- скопируйте все подкаталоги в соответствии с 4.2.2.1 в этот каталог проверки 4.2.2
- теперь щелкните правой кнопкой мыши "Test-4.2.2" и зафиксируйте.
- удалить временную папку "Test-4.2.2.1"
в Windows 7 я сделал это:
- вы установили SVN и Tortoise SVN? Если нет, то Google их, и сделать это сейчас.
- перейдите в папку SVN, где у вас могут быть другие репозитории (сокращение от репозитория) (или если вы создаете его с нуля, выберите диск C, диск D и т. д. или сетевой путь).
- создать новую папку для хранения нового репозитория. Назовите его тем же именем, что и название вашего проекта
- щелкните правой кнопкой мыши папку и выберите Tortoise SVN - > создать репозиторий здесь
- скажите "да", чтобы создать структуру папок
- нажмите OK. Вы должны увидеть новый значок, похожий на "wave" рядом с вашей новой папкой/repo
- щелкните правой кнопкой мыши новое РЕПО и выберите SVN Repo Browser
- щелкните правой кнопкой мыши 'trunk'
- выберите Добавить папку... и укажите на структуру папок вашего проекта в разработке.
- нажмите OK, и SVN добавит вашу структуру папок. Будьте терпеливы! Похоже, SVN имеет разбился / замерз. Не волнуйся. Он делает свою работу.
готово!
3 шага:
- откройте "браузер РЕПО" (используйте ссылку родительской папки yr) .
- щелкните правой кнопкой мыши выберите "Добавить папку".
- перейдите к папке.