我正在学习使用Visual Studio.NET与SVN合作。 一切工作正常,所有,但我无法弄清楚的东西:
我有我的原始源代码在C:\源
我在c:\ repo(svn:// localhost)创build了一个仓库,
我使用VS.NET在svn:// localhost / MyProject / trunk添加了我的解决scheme
我检查了从存储库/主干工作副本到C:\工作副本
我对这个工作副本的myfile.cs进行了一些更改,并且没有任何错误地提交。 我更新到最新,再次检查等,这一切都很好。
但是,我从Windows资源pipe理器的c:\ source \ myfile.cs中检查了相同的文件,它是旧版本。 没有任何修改。 我以为提交工作会改变原来的主干版本? 我在这里错过了什么? 还是我理解源代码pipe理都错了?
你的工作拷贝当然是C:\working copy
; 您对工作副本所做的任何更改都将反映在这些文件中。 当你提交时 ,你正在C:\repo\<repo>
,所以当你退出回购时,你也会看到更改。
但是, C:\source
的原始源文件不会被触及,因为它既不是您的工作副本,也不是回购本身。
其实,你的C:\source
本身没有任何东西可以做。 它没有连接到任何东西(不是一个工作文件夹)。
您的存储库位于C:\repo
,并且在您执行提交时,更改将保留在那里。
您将在工作文件夹(IE, C:\working copy
)上执行UPDATE
时下载更改
要回答你的后续问题:你想编译当前版本库树干,而不是自动合并每个人的当前工作副本。 即使生成编译代码的几率也很低。
当你完成一个好的改变,并用本地构建进行测试时,将其提交给SVN。 无论在存储库中的是权威的代码和你的编译系统应该编译。