来自不同用户的SVN签入代码

  • 本文关键字:SVN 代码 用户 svn
  • 更新时间 :
  • 英文 :


我的前任几天前离开了公司。不幸的是,他忘记了签入他对subversion所做的所有更改。我可以访问他的更改,因为源代码在一个公共文件共享上。我想在不丢失的情况下查看他的更改。最好的方法是什么?问题是有效的代码在文件共享上,而不是在subversion上。

我能想到的一种方法是将源代码导出到另一个地方。制作"new"trunk并再次导入所有代码。

感谢您提前提出建议

如果我是你,我会以自己的身份签入所有代码,并在提交消息中明确表示这些更改实际上来自你的前任。如果将来的承诺有任何问题,这样你就可以避免成为每个人都很生气的人:)。除此之外,我认为不需要新的trunk或其他任何东西。

我真的不理解这部分:

问题是有效代码在文件共享上,而不是在subversion上。

你的意思是,你不能只是从"文件共享"提交吗?文件共享是像\servernamesharesomepath那样的网络共享吗?如果是这样的话,那么如果你安装Git,它会附带一个名为Git-Bash的漂亮终端应用程序,你可以在其中做到这一点:

cd //servername/share/some/path  # yes, forward slashes instead of 
svn commit                       # you must have `svn` on PATH, of course

如果你不想仅仅为此安装Git(尽管我告诉你这是值得的,这是一个很棒的终端应用程序),我想你可以将他的整个工作目录复制到另一个地方,在那里你可以使用你常用的svn工具,如TortoiseSVN或诸如此类,然后更新和提交。

在最坏的情况下,如果你没有他的.svn目录,只有他的更新文件,那么我认为你需要在他使用的基本修订版签出trunk。如果你不知道确切的修订版,那么你可以试着用svn info -R \servernamesharesomepath(取最新的)来找出,或者好好猜测。在这个旧版本中签出trunk,在顶部复制他的文件,然后执行svn update。您需要这样做,而不是简单地复制最新的修订版,因为这将消除其他人自那时以来所做的更改。如果你明白我的意思。

我希望我以前的建议能奏效,你不需要求助于最后一个,因为这很难做对。

最新更新