Вы не можете изменить историю.Если вы допустили ошибку в старой версии Subversion, вы не можете изменить уже внесенные изменения, чтобы исправить эту ошибку.Вам просто нужно сделать новый коммит.
Теперь, когда я говорю , вы не можете изменить историю , я имел в виду, что не существует легкого пути.Вы можете сделать svnadmin dump
, испортить результаты, а затем выборочно сделать svnadmin load
.
Я не уверен на 100%, как именно это сделать.Я использовал метод дампа и загрузки, чтобы удалить ревизию, в которой была проприетарная информация, которой не должно было быть в нашем репозитории.Но я никогда не путаю историю, чтобы исправить старую ошибку.
И вы, вероятно, действительно не хотите.Представьте, если ошибка находится в ревизии № 23, и вы ее исправили.Кто-то с ревизией № 26 вашего кода пытается выяснить, в чем дело, но не может найти проблему в источнике.В конце концов, лучше быть честным: мы сделали болван, и нам нужно это исправить.
Я могу представить, где у вас есть ошибка в ревизии № 24 ствола, клиент хочет ревизию № 28,и ваш багажник сейчас на ревизии №50.Если вы исправите ошибку в редакции № 24, вы можете предоставить клиенту редакцию № 28.В этом случае вы должны создать ветку для версии # 28 и исправить ошибку в этой ветке.
Вот что вы можете сделать: Измените инструкцию commit, чтобы включить примечание об ошибке, чтобы другие были предупреждены.