Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SVN Merge Trunk to a Branch

Tags:

svn

Assume the following scenario.

I have two files A.cpp and B.cpp in trunk. At revision 50 I create an experimental branch called X. Therefore at revision 50 both trunk and branch X are the same.

I continue to work on trunk and add C.cpp and D.cpp. I then realize that there is a bug in A.cpp and so I fix the bug.

Now my question is how do I send the updated A.cpp to branch X without sending the other files(B.cpp C.cpp D.cpp)?

like image 717
Sunny Avatar asked Jan 23 '23 12:01

Sunny


2 Answers

In a working copy of the branch, merge the revision that updated A.cpp. Alternatively, if you have no local branch changes you need to preserve, you could just svn copy A.cpp from trunk and overwrite your local A.cpp.

Example

cd workingCopyOfX
svn merge -r50:51 http://my.repo.com/trunk/A.cpp

assuming the fix was made in r51

like image 139
Michael Hackner Avatar answered Feb 01 '23 09:02

Michael Hackner


Depending on what platform you are on depends on how this is shown in the interface, but you should just be able to right click on the file and select merge, or deselect the files that you do not want to merge in the interface.

If you are working on a command line environment then you should just be able to run svn merge and type in the filename.

More details (although old I believe they're still relevant) can be found here

like image 22
Matthew Steeples Avatar answered Feb 01 '23 10:02

Matthew Steeples