SVN Update отложить -> Как решить? - PullRequest
22 голосов
/ 06 августа 2011

Когда я сделал svn update и SVN спросил меня о некоторых различиях, я сказал, чтобы они откладывали их.

Теперь я хотел бы разрешить их, но svn update просто говорит мне "в курсе", хотя svn diff показывает мне различия.

Как мне заставить svn update снова спросить меня о конфликтах?

Ответы [ 3 ]

17 голосов
/ 06 августа 2011

svn update больше не будет расспрашивать о конфликтах, потому что рассматривал их.

Что касается значения svn status, файлы ? не управляются SVN, файлы M были изменены, а файлы C являются конфликтующими, которые вы отложили. Если вы откроете один из файлов C и просмотрите его, в коде вы увидите маркеры, показывающие, где находятся конфликты. Вам нужно отредактировать каждый из них, исправить конфликты и удалить маркеры. А затем вам нужно запустить svn resolve, чтобы сообщить SVN, что все в порядке. Обязательно используйте параметр --help и Google, чтобы узнать, как работает svn resolve, прежде чем запускать его.

Если вы не сделаете все это, svn commit больше не будет работать.

svn status действительно важно понять, потому что svn diff показывает только то, что произошло локально после svn update. Но svn status -u дает обзор после запроса к хранилищу. Самое главное, он четко определяет файлы с конфликтами (C в столбце 1), которые необходимо открыть в редакторе и проверить вручную.

7 голосов
/ 29 марта 2013

Когда вы запустите svn commit, у вас будет список конфликтующих файлов.Затем можно разрешить конфликты, введя такие команды, как:

svn resolve --accept=theirs-full '/path/to/the/file'

Введите svn resolve --help для получения списка доступных режимов разрешения конфликтов.

0 голосов
/ 14 мая 2018

После откладывания вы должны запустить svn resolv для каждого конфликтующего файла.

Если вы хотите увидеть конфликты, вы можете запустить:

svn resolve /path/to/file

выберите «m» дляfusion

Для каждого конфликта вы видите обе версии.Вы можете использовать свою версию, их версию, микс (свою, затем свою) или отредактировать одну или обе версии.

Пример:

    Conflicting section found during merge:
        (1) their version (à la ligne 88)    |(2) your version (à la ligne 77)  
        -------------------------------------+----------------------------------
        text = new_box(name, column, option) |  text = new_box(name, column) 
        -------------------------------------+----------------------------------

        Select: (1) use their version, (2) use your version,
                (12) their version first, then yours,
                (21) your version first, then theirs,
                (e1) edit their version and use the result,
                (e2) edit your version and use the result,
                (eb) edit both versions and use the result,
                (p) postpone this conflicting section leaving conflict markers,
                (a) abort file merge and return to main menu: 2

, затем выберите "r "для обозначения разрешенного конфликта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...