Ответ 1
Найден Google, как это исправить: нажмите F5 в окне фиксации (не в "всплывающем окне предупреждения" )
Подробнее см. http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2831045.
Я проверил локальную ветвь SVN (моя ветвь), с которой я слился из другой ветки (которая имеет совершенно другую структуру папок). Таким образом, в основном есть много удалений (старых файлов) и дополнений (новых файлов).
Когда я пытаюсь передать слияние в репозиторий (к моей ветке), Tortoise говорит
Эта фиксация не является рекурсивной, и есть перемещенные/переименованные папки, выбранные для фиксации. Такие перемещения/переименования всегда выполняются рекурсивно в репозитории. Вы все равно хотите зафиксировать?
Можно ли продолжить эту фиксацию? Если нет, что мне делать, чтобы не было проблем?
Кроме того, для некоторых файлов, которые я добавил, я внес изменения после добавления (если это влияет на природу).
Найден Google, как это исправить: нажмите F5 в окне фиксации (не в "всплывающем окне предупреждения" )
Подробнее см. http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2831045.
У меня была такая же проблема, но она была решена, возвращая изменения в файлы, которые были отмечены как "игнорировать-на-коммите"
Как только я вернул эти файлы, то tortoisesvn смог передать все остальные файлы из слияния
Является ли это прекрасным, если я продолжу эту фиксацию?
Нет, ваш коммит будет игнорировать все изменения в дереве WC и отражать только изменения на уровне корня (срывное слияние).
Вы сделали ошибку при первоначальной проверке нерекурсивности. Вы можете попытаться выполнить хороший, полный commit с помощью параметра --depth infinity
в CLI или найти этот переключатель в TortoiseSVN GUI.
svn commit --depth infinity . -m "Merge"
Также для некоторых файлов, которые я добавил SVN, я внес изменения после добавления (если это влияет на природу).
В моем случае это именно то, что вызвало появление сообщения, даже я не выбрал эти файлы для фиксации.
Ужасное решение, которое работает только безопасно, если затронуто только несколько файлов:
Напоминание о себе: только реинтегрируйте ветку, если цель (соединительная линия) чиста.
Проблема может заключаться в том, что ваш mergeinfo удаляется кем-то или автоматически, потому что информация перемещается вверх по дереву. Если вы снова объедините их, это будет работать на данный момент. Но все остальные будут сталкиваться с проблемами не объединенных отраслей. SVN потеряет некоторый код и снова объединит уже отправленный код.
Поэтому восстановление этих файлов и их изменение снова могут работать, но вы не должны просто фиксировать изменения.
У меня была такая же проблема. Вместо того, чтобы выбирать все файлы, я нажал на версию, и все сработало хорошо. В моем случае опция versioned выбрала все файлы, поэтому теперь все в порядке.
Похоже, что TortoiseSVN выполняет некоторую проверку достоверности перед вызовом commit. Хорошо, но сообщение об ошибке очень неясно.
Когда я столкнулся с этой проблемой, я вернулся к использованию командной строки svn для фиксации. Не удалось завершить транзакцию из-за того, что одна из папок не обновлялась. После обновления только этой папки я снова выполнил "svn commit", и он прошел.
Изменить: PS: Прежде чем использовать это, убедитесь, что у вас нет файлов, помеченных как "ignore on commit". "Игнорировать при фиксации" - это черепаха, и SVN commit также выбирает эти изменения.
Просто подумал, что я опубликую это, потому что это сработало для меня...
Причина этого в том, что я частично переименовал один из новых проектов, которые я создал, и по какой-то причине они все проявили себя как "Отсутствующие" на экране фиксации.
После того, как я удалил проект и папку (в которой SVN поставил галочку) и снова вернул его в качестве нового проекта, внезапно все "пропущенные" превратились в "Добавлено", и коммит прошел нормально без предупреждения меня что-нибудь.
Надеюсь, это поможет!
Я не знаю опции для tortoisesvn, но вы можете использовать командную строку
svn commit --non-recursive [folder]
Это будет работать так же, как вам нравится работать greeings