Удаление филиала SVN
-
26-09-2019 - |
Вопрос
Я создал филиал проекта SVN под названием «Особенности», а теперь всякий раз, когда я пытаюсь обновить указанный проект, он приносит с ним в папке функций, которая содержит другую копию проекта из ветви. Есть ли способ полностью удалить ветвь с репозитория, чтобы это больше не происходит?
Решение
Конечно: svn rm
Нежелательная папка, и совершать.
Чтобы избежать этой ситуации в будущем, я бы последул Рекомендуемая планировка Для проектов SVN:
- Поместите свой код в
/someproject/trunk
папка (или просто/trunk
Если вы хотите поставить только один проект в репозитории) - Созданные ветви как
/someproject/branches/somebranch
- Положите теги под
/someproject/tags
Теперь, когда вы проверяете рабочую копию, обязательно проверим только trunk
или какая-то отдельная ветвь. Нет Проверьте все в одной огромной рабочей копии, содержащей все ветви.1
1Если вы не знаете, что вы делаете, в этом случае вы знаете, как создать мелкие рабочие копии.
Другие советы
Предполагая, что эта ветка не внешняя или симличийка, удаление ветви должна быть такой простой, как:
svn rm branches/< mybranch >
svn ci -m "message"
Если вы хотите сделать это в репозитории, то обновите, чтобы удалить его с вашей рабочей копии, вы можете сделать что-то вроде:
svn rm http://< myurl >/< myrepo >/branches/< mybranch >
Затем запустите:
svn update
Для тех, кто использует ТортосветВН, вы можете выполнить это с помощью браузера репозитория (это помечено «REPO-браузер» в контекстном меню.)
Найдите папку ветви, которую вы хотите удалить, щелкните правой кнопкой мыши и выберите «Удалить».
Введите ваше сообщение Commit, и вы закончите.
Вы также можете удалить ветку на дистанционном режиме напрямую. Сделав это, следующее обновление удалит его из вашей рабочей копии.
svn rm "^/reponame/branches/name_of_branch" -m "cleaning up old branch name_of_branch"
То ^
Коротко для URL удаленного, как видно в «SVN INFO». Двойные кавычки необходимы в командной строке Windows, потому что ^
это особый характер.
Эта команда также будет работать, если вы никогда не проверяли ветку.
Вы можете удалить папку «Функции», как и любой другой в вашем оформлении заказа, затем совершайте изменения.
Чтобы предотвратить это в будущем, я предлагаю вам следовать соглашениями о именовании для макета SVN.
Либо дайте каждому проекту багажник, филиалы, теги папки, когда они созданы.
svn
+ project1
+ trunk
+ src
+ etc...
+ branches
+ features
+ src
+ etc...
+ tags
+ project2
+ trunk
+ branches
+ tags
Из рабочей копии:
svn rm branches/features
svn commit -m "delete stale feature branch"
Команда удалить ветку выглядит следующим образом:
SVN удалить -M »u003Cyour message> "u003Cbranch url>
Если вы хотите не получить / оформить все репо, выполните следующую команду на вашем терминале:
1) Получите абсолютный путь каталога, который будет содержать вашу рабочую копию
> pwd.
2) Начать CVN Code Checkout
> Оформление SVNu003Cbranch url>u003Cabsolute path from point 1>
Вышеуказанные шаги получит вам файлы внутри папки ветви, а не всю папку.