I used to use git to port features between different branches, rebase, rebase --onto, cherry-pick are typical tools I used. But now I have to work with svn. I don't like to use svn's built in merge command, cause it will combine all the commits into one "merge commit", though with some history traceability after 1.5. Say if I have a range of commits from r100 to r110 in branchA, now I want to port this feature to branchB and branchC by replaying these commits one by one with the same commit comment (resolve any conflicts in between). Is there any automatic tool which can do this for me?
How to transplant patches in svn
499 Views Asked by Terry Shi At
2
There are 2 best solutions below
3
Hank Gay
On
If you can, use git-svn. The awesome git history won't be in the central repo, but you'll have a much better time managing the work on your end.
Related Questions in SVN
- Cannot load modules/mod_dav_svn.so into server
- Created Jenkins pipeline and added the script in the Pipeline Description.To check out the Project from the svn repository.NotWorking. Any Suggestion
- How to host SVN server on Cloud
- In two subversion repositories (same machine), can I have different usernames with no password prompting?
- Unrelated git histories when moving code from SVN to Git
- Convert local SVN to GIT using Tortoise GIT fails with unable connect?
- Jenkins Pipeline Script Check-in SVN using NPM
- Making latest subversion exec point to my restored subversion data directory
- Can anyone help on this "svn merge" problem?
- clone repo from SVN to GIT: unable to connect to a repository
- Possible to recursively serve an existing SVN checkout folder to another computer?
- How to push certain branches into git repository?
- Subversion svn merge failure
- Jenkins: SVN Checkout missing commit message
- SVN same setup, same user, fine from one machine but from another DAV/PROPFIND error
Related Questions in GIT
- problem to push files on a repository git
- diff3 output in git conflict style, including mergeable hunks
- Git Not In Sync with Local Branch
- Setting up the version control of .dotfiles while the .config is connected to a forked repo
- How to fix overriding the main branch in Git?
- I can't add text to "Message" in VS Code when committing to Git
- How can i redirect pull request from main branch to another branch
- Xcode commits (possibly outside of any branch) disappeared, how to get them back?
- Git/TortoiseGit : how to apply ONLY the changes from ONE commit from branch A, to branch B?
- How can I reintroduce username an password on git using fedora?
- GIT SKIP EMPTY DIRECTORIES
- Git smudge run once per checkout or per commit?
- I can't find ~/.profile or ~/.bashrc in C:/Users/<user>/.ssh folder
- Set environment variable during push for GitHub Actions
- Android WebRTC compile
Related Questions in MERGE
- Purpose of last 2 while loops in the merge algorithm of merge sort sorting technique
- Having trouble merging these two datasets for a Spatial Analysis
- Merge Azure mp4 blobs via API (Preferred Azure)
- Git merge strategies vs. merge drivers vs. mergetools
- Merge Request in Bitbucket: Possible to exempt a specific branch to ask for Merge Request?
- How to properly extend the generic interface with a new generic parametr using decration merging in Typescript?
- Merge effective dated records of an attribute with the main effective dated table (SQL)
- How do I merge multiple tables into a new table in BigQuery?
- Exclude a file from merging to the main branch
- Usage of merge in linux sort utility
- How can I collapse repeated missing observations into a single nonmissing observation for the same ID in SAS?
- Best way to automate auto-merging git branches
- git: merging a branch that's already been merged by mistake
- Dynamically create, merge & save dataframes in a for loop
- VBA find matching Excel files with a subtext - and merge them into single new file
Related Questions in PATCH
- Yocto kernel patch fails with git am
- Cargo patch to redirect registry to local path without having to call cargo login
- Sharepoint 2016 timer service cannot start after applying windows OS patch KB5035855
- How can I patch a function call to a Windows DLL (e.g. kernel32 LoadLibrary)? Is this even possible?
- How do I update data in my JSON file using Postman?
- How do I apply this apache patch: rewrite-windows-testchar-h.patch
- How to distinguish two PATCH operations for the same enity
- Patching UEFI Pei module problems with addresses
- Marklogic versioning
- How to use New-AzConfigurationAssignment Powershell cmdlet for Dynamic Scope for different subscriptions -Azure update manager
- Patch executable is deleted by windows defender but the same was not deleted in earlier build patches
- How to make patch(1) use the answer with +++ instead of asking
- Create "git format-patch" output from existing "diff" file
- Laravel PATCH validation fails in controller
- Edite https://graph.microsoft.com/v1.0/admin/people/profileCardProperties
Related Questions in TRANSPLANT
- Prestashop | Remove transplant restrictions
- How to migrate my cakephp2 project to cakephp3?
- Printing transplant source changeset hash
- mercurial transplant a merge commit
- In Mercurial (hg), how do you query the hg database for changeset information?
- how to transplant linux shell command from linux to android
- cannot add C++/CLI dll to windows phone
- windows phone empty dynamic link library : visual C++
- Is it hard to transplant my ios app to android app?
- HexBinaryAdapter in C#?
- prestashop 1.4 transplant home featured module in a new hook
- How to achieve a private branch in git that "floats" when merging with upstream?
- Mercurial - Rebase branch of old code on top of new code tip, ignoring branch's merges with old code
- In mercurial, is there a way to merge during transplant?
- How to transplant patches in svn
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I don't know of any automated tool to do this, but you could implement one along the same lines of
git rebase. All it does it make a temporary directory and usegit format-patchto to extract the changes you want to rebase and thengit amto apply them back to the target root. If you typelocate git-rebaseon your system you can read it -- it's a shell script. It's probably/usr/local/libexec/git-core/git-rebase.The
svnequivalent would usesvn diffandsvn logto save the original commit information followed bypatchandsvn commit.