SVN слияния объединены дополнительные вещи

голоса
10

Я только что сделал слияния, используя что-то вроде:

svn merge -r 67212:67213 https://my.svn.repository/trunk .

У меня было только 2 файла, один из которых является простым ChangeLog. Вместо того , чтобы просто сливаясь мои ChangeLogизменения, он фактически вытащил мину плюс некоторые предыдущие , которые не были в месте назначения ChangeLog. Я заметил , что был конфликт , когда я выполнил --dry-бег, так что я обновил ChangeLog, и по- прежнему существует конфликт (и я увидел конфликт , когда я сделал фактическое слияние).

Я потом на сравнить при файле я сливающийся из:

svn diff -r 67212:67213 ChangeLog

И я вижу только изменения, которые я сделал, так что я знаю, что дополнительные изменения не попасть туда каким-то образом.

Это делает меня беспокоит, что слияние не на самом деле просто брать то, что я изменился, что это то, что я ожидал бы. Кто-нибудь может объяснить, что произошло?

UPDATE: В ответ на NilObject:

Итак, у меня есть 2 файлов, измененные, только ChangeLog является актуальным, а другими объединенными хорошо. Когда я иду к моей обычной магистральной кассе, я делаю команду дифф выше и посмотреть:

Index: ChangeLog
===================================================================
--- ChangeLog   (revision 67212)
+++ ChangeLog   (revision 67213)
@@ -1,3 +1,7 @@
+2008-08-06  Mike Stone  <myemail>
+
+   * changed_file: Details.
+
 2008-08-06  Someone Else  <their_email>

    * theirChanges: Details.

После моего слияния предыдущих изменений, разница в ChangeLog выглядит следующим образом:

Index: ChangeLog
===================================================================
--- ChangeLog   (revision 67215)
+++ ChangeLog   (working copy)
@@ -1,3 +1,14 @@
+<<<<<<< .working
+=======
+2008-08-06  Mike Stone  <myemail>
+
+   * changed_file: Details.
+
+2008-08-06  Someone Else  <their_email>
+
+   * theirChanges: Details.
+
+>>>>>>> .merge-right.r67213
 2008-08-05  Someone Else2  <their2_email>

    * olderChange: Details.

Обратите внимание , что запись , которая была неправильно тянут в не в файле я присоединяемого его, но все же это не один из моих изменений и не должны были быть объединены в любом случае. Это было легко исправить (удалить лишние строки , которые не были частью моих изменений), но это все еще заставляет меня беспокоиться о слиянии автоматически SVN.

Задан 06/08/2008 в 23:30
источник пользователем
На других языках...                            


2 ответов

голоса
2

Это происходит только с конфликтами - в основном SVN попытался объединить изменения, но (грубо говоря) видел изменения, как:

Добавить

2008-08-06  Mike Stone  <myemail>

* changed_file: Details.

до

2008-08-06  Someone Else  <their_email>

И он не мог найти кто-то другую линию, делая слияния, так швырнул, что бита в для контекста при вводе в конфликте. Если бы это было не конфликтующие слияние только изменения, которые вы ожидали бы были применены.

Ответил 17/08/2008 d 18:17
источник пользователем

голоса
0

Там не совсем достаточно информации, чтобы идти здесь.

svn merge -r 67212:67213 https://my.svn.repository/trunk .

сольется любые файлы, измененные в ходе пересмотра 67212 в папке / ствол на хранилище и объединить их в текущий рабочий каталог. Если вы делаете:

svn log -r 67212

Какие файлы это шоу изменилось? Слияние будет тянуть только изменения от первого аргумента, и применить их ко второму. Она не загружает на сервер в первом аргументе.

Если это не отвечает на вопрос, не могли бы вы опубликовать более подробную информацию относительно того, что именно происходит?

Ответил 07/08/2008 d 00:12
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more