を合併:SVNのマージは、私はちょうどのようなものを使用して、マージをした余分なもの
svn merge -r 67212:67213 https://my.svn.repository/trunk .
私だけの簡単なChangeLog
そのうちの1つは2つのファイルを、持っていました。私のChangeLog
の変更をマージするのではなく、実際にマイナスに加えて、宛先になかったいくつかの以前のものを引き戻しましたChangeLog
。 --dry-runを実行したときに競合が発生していることに気づいたので、ChangeLog
を更新しましたが、まだ競合がありました(実際のマージを行ったときに競合が発生しました)。
私はその後、私はからマージされたファイルに差分を取っ:
svn diff -r 67212:67213 ChangeLog
そして私は私が作ったばかりの変更を参照してくださいので、私は余分な変更が何とかそこに取得していないことを知っています。
これは、実際に私が変更したものだけをマージするのではなく、私が予想していたことだと心配しています。誰が何が起こったのか説明できますか?
UPDATE:NilObjectに応じて:だから
、私は変更の2つのファイルを持っている、唯一のChangeLogは、他のマージされた罰金の関連です。私は、通常のトランクチェックアウトに行くとき、私は上記のdiffコマンドを実行すると、以下を参照してください
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.
を以前の変更の私のマージした後、変更履歴のdiffは次のようになります。
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
で自動的にマージすることを心配しています。
私は視覚的/手動のマージを行うときにSVNが "彼らの"側の "既存の"基礎文書を提供しなければならないので、あなたのマージ基準の最新のリビジョンはそれです。それは本当に厄介です! (少なくともマージゲームを初めてやっている人や、チェリーピッキングや他のマージの素晴らしさに驚嘆している人にとっては) – Tao