有几个类似的问题,但我找不到任何足够接近,不提出一个新问题.
我们有一个由20多个项目组成的兼容性的vs2010解决方案.
我们还有一个承包商在其中一个项目的一部分上远程工作,一个Labview FPGA + RT + DotNetAssembly.
我最好将他的代码放入我们的Mercurial仓库的"ContractorsSVNRepo"(见下文)中,当我想要更新时,我下载他的svn仓库,如果我对它感到满意,那么我会致力于我们的mercurial仓库.
我可以访问他的svn repo以获得他的部分项目,但是出于安全/ IP原因,他无法访问我们的Mercurial仓库.因为我不熟悉mercurial我甚至不知道是否可以让他只访问一个回购的文件夹,所以这就是我想出的.
这会有用吗?能做到吗?我只是在目标文件夹中创建一个svn repo,下载它然后只将我想要的文件添加到我们的仓库?两个scc系统会在一起扭转/发挥得很好吗?我会尝试它,看看会发生什么,但我不熟悉mercurial但不想冒险破坏我们的mercurial repo并且无法快速恢复它.
OurAppsMercurialRepo
Proj1
Proj2
Proj3
Proj3Folder1
Proj3Folder2
Proj3Folder3
ContractorsSVNRepo
...
Proj40
Run Code Online (Sandbox Code Playgroud)
编辑1:
我不认为我已经做到了这一点,因为拉动来自另一台机器的更改只会拉动.hgsub文件,它不会拉动svn回购(或者我可以告诉,甚至尝试我没有被要求或添加任何登录详情).
我在我的机器上做了这个:
HG init ContractorsSVNRepo
创建.hgsub,其中包含"ContractorsSVNRepo = [svn] https://ContractorsRepo.com/svn/trunk"HG
add .hgsub
svn co https://ContractorsRepo.com/svn/ trunk ContractorsSVNRepo
HG status
HG commit -m"Subrepositories added"
但是,当我拉动另一台机器时,它会拉动.hgsub文件.链接的文档表明,对主要回购进行拉动将拉回两个回购,但它只会拉动多头回购?我错过了这些步骤吗?
EDIT2:
在OurAppsMercurialRepo内部:
svn co http://svn.contractor.com/svn/proj4other/trunk Proj3/ContractorsSVNRepo将以下内容直接放在.AppsMercurialRepo内的.hgsub文件中:
Proj3/ContractorsSVNRepo = [svn] http://svn.contractor.com/svn/proj4other/trunk从现在开始,当您提交OurAppsMercurialRepo时,在提交时修改subversion checkout存储在mercurial中
感谢您的回复,但是这并没有改变任何事情,我不担心,它仍然没有下载/更新svn源拉拉主回购,我现在得到一个错误,我的路径名称
"中止:路径包含非法组件:".
我怀疑这是因为我们的路径名称中有" . "所以我要放弃并创建一个单独的svn repo并手动将我想要的文件复制到mercurial中.它不会失败,它不会让其他开发人员头疼,我不会再浪费时间了.
| 归档时间: |
|
| 查看次数: |
674 次 |
| 最近记录: |