从git合并到svn:
svn切换分支→svn还原分支→svn更新分支→git切换分支→git拉取分支→svn提交分支
svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支
从svn合并到git:
git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
git→svn:
1、git新增A文件,svn没有新增A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支
2、git新增A文件,svn新增A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支(会打印冲突报错,程序介入解决即可)→svn提交分支
3、git没有新增A文件,svn新增A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支
4、git修改A文件,svn修改A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支(会打印冲突报错,程序介入解决即可)→svn提交分支
5、git修改A文件,svn删除A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支,svn会拿到git最新的文件
6、git修改A文件,svn没有操作A文件,合并到svn:
7、git删除A文件,svn删除A文件,合并到svn:
8、git删除A文件,svn修改A文件,合并到svn:
svn切换分支→svn还原分支→svn更新分支→git拉取分支(会打印冲突报错,程序介入解决即可)→svn提交分支
9、git删除A文件,svn没有操作A文件,合并到svn:
10、git没有操作A文件,svn修改A文件,合并到svn:
11、git没有操作A文件,svn新增A文件,合并到svn:
12、git没有操作A文件,svn删除A文件,合并到svn:
13、git重命名A文件→B文件,svn修改A文件,合并到svn:
14、git重命名A文件→B文件,svn删除A文件,合并到svn:
15、git重命名A文件→B文件,svn重命名A文件→C文件,合并到svn:
16、git重命名A文件→B文件,svn重命名A文件→B文件,合并到svn:
17、git重命名A文件→B文件,svn不操作A文件,合并到svn:
18、git修改A文件,svn重命名A文件→B文件,合并到svn:
19、git删除A文件,svn重命名A文件→B文件,合并到svn:
20、git重命名A文件→C文件,svn重命名A文件→B文件,合并到svn:
21、git不操作A文件,svn重命名A文件→B文件,合并到svn:
3、git删除文件,合并到svn: svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支
4、git修改文件,svn没有修改文件,合并到svn: svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支
5、git没有修改文件,svn修改文件,合并到svn: svn切换分支→svn还原分支→svn更新分支→git拉取分支→svn提交分支 (结果,svn的被git覆盖,此操作不允许)
6、git修改文件,svn修改文件,合并到svn: svn切换分支→svn还原分支→svn更新分支→git拉取分支(这里就会报错,拉取报错,程序介入沟通,是替换git,还是替换svn)→svn提交分支
svn→git:
1、svn没有修改文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
2、svn新增文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
3、svn删除文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
4、svn修改文件,git没有修改文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
5、svn没有修改文件,git修改文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支
6、svn修改文件,git修改文件,合并到git: git还原分支→git更新分支→svn切换分支→svn更新分支→git提交分支