我处于一个经典的情况:我的公司系统基于svn,可能它永远不会改变。但我更喜欢git,因为它具有扩展的功能,稳定性,灵活性和速度。
因此,我尝试在我的开发机器上使用git,但我想让它以svn为中心的软件开发(部分人工)基础设施不可见。
是的,我知道有一个gitsvn来弥合git和svn之间的差距。但事实是,我对gitsvn并不满意,而且我学的文档越多,我就越来越不满意。
目前我认为放弃我的git项目并且只使用svn对我来说更好。
我有一个想法,这会让事情变得有点复杂,但至少它会完全符合我的要求。我的想法是单独在同一个工作树上使用svn和git。我在想这个布局:
.git/
.gitignore (<- of course .svn here)
.svn/
.svnignore (<- of course .git will be also ignored)
dir1/
dir2/
...
我完全忽略了gitsvn。我只是把它从一切中解脱出来。当然,.git和.svn需要对两个系统都不可见。
我认为,从某种意义上讲,我需要保持VCS-s状态,但我认为,我会使用某种类型的内部标准来做到这一点。例如,我主要使用git,并且仅将svn用于中央存储库的提交/更新。
我知道,eclipse(和大多数IDE)都无法处理这样的结构,但我认为我可以忍受这种结构。
有人也这样做了吗?有什么经历?