Должны ли мы всегда обновляться, прежде чем совершать в SVN?
Когда я передаю что-то в SVN, должен ли я сначала обновить свою локальную копию, или слияние будет выполнено автоматически?
Другими словами, должен ли я всегда обновлять перед фиксацией или могу ли я просто зафиксировать?
Ответ 1
Слияние в централизованных системах контроля версий (CVCS), таких как subversion, всегда выполняется до фиксации, поэтому вы должны обновлять, тестировать (если есть изменения), а затем совершать.
Представьте, что кто-то изменил что-то, что не привело бы к конфликту, но будет реагировать на ваши изменения. Затем вы должны зарегистрироваться, а версия на сервере - это не то, что вы тестировали.
Итак, перед фиксацией всегда делайте svn update, чтобы убедиться, что ваши изменения по-прежнему ведут себя так, как вы думали, что они делают: протестируйте версию, которая находится в вашем WC, если ваша фиксация по-прежнему разумна, сделайте это. В случае ошибок исправьте их, прежде чем переходить к репо.
Ответ 3
Нет, вам это не нужно. Если ваша рабочая копия устарела и SVN не может объединиться, вы получите сообщение об ошибке с фиксацией. Это время, когда вам нужно обновлять и разрешать конфликты, если они есть.
Ответ 4
Слияние выполняется с вашей рабочей копией. Поэтому сначала нужно обновить, чтобы избежать конфликтов. Однако, если вы пытаетесь совершить ошибку, никакого вреда не наносится. Если есть удаленные конфликтующие изменения, фиксация все равно будет отменена.