使用现有文件夹设置Tortoise SVN

时间:2011-10-07 14:40:21

标签: svn tortoisesvn

我正在非常拼命地设置TortoiseSVN ...我有两个文件夹 - / live /和/ test / - 我希望它们被镜像,然后如果我更新/ test /文件夹,SVN将检测到这个,并在我提交时适当地更新/ live /文件夹..我已经尝试了无数的事情来使这个工作,但不幸的是没有快乐。

我可能非常愚蠢,但我发现整个SVN的事情非常令人困惑,除了版本(Mac)之外,我从来没有真正能够让一个人工作。在理想的世界里,我想选择两个文件夹,然后离开!

谢谢!

(编辑)在阅读了下面的内容后,仍然失败了,我可能不得不给这个错过。非常感谢你的回复,但这真的超出了我。我将使用WinMerge并牺牲能够存档我所做的更改。再一次感谢你们的回复,希望这些答案对那些真正有能力设置这些东西的人有用!

6 个答案:

答案 0 :(得分:2)

Subversion(使用TortoiseSVN或命令行)并不适用于像镜像这样的事情。

当您提交/live/或者考虑向TortoiseSVN添加Post-Commit Hook以使用客户端Hook脚本自动执行此操作时,您可以手动更新/test/

TortoiseSVN documentation

注意: 如果您不需要编辑或更改/live/,您应该查看Subversion export命令,而不是让live是一个工作副本(您仍然需要手动执行此操作或添加post-提交钩子)。

答案 1 :(得分:2)

在您对SVN过于困惑之前,read chapters 1-3 of this book

SVN不是自动复制工具。它不是备份工具。这是一个修订控制系统。使用它做一些不应该做的事情是可能的;但是,结果往往不如使用正确的工具来完成工作。

答案 2 :(得分:1)

TortoiseSVN是Subversion 客户端。至少,您需要创建一个Subversion 存储库来存储您的文件,然后将您的文件从Subversion存储库中检出到您计算机上的目录中。我真的认为你应该阅读一下Subversion的工作原理。这个book是官方参考。

答案 3 :(得分:1)

听起来你想要同一个分支(或主干)的两个工作副本 - 一个在live中,另一个在test中。为此,请创建两个目录,并在每个目录中执行svn checkout分支(或主干)(即checkout两次)。确保在两个结帐中使用相同的分支(或主干)。

当您svn commit进行测试时,您的下一个svn update将会接收更改。

我不确定你为什么要这样做。在您提交之前,只要您需要,您就可以“在线直播”进行编辑。如果您需要对测试中的更改进行版本控制,则需要阅读branching

答案 4 :(得分:1)

如果我理解正确有存储库,并且有两个工作副本,test和live,并且您希望在提交测试工作副本的更改时自动更新实时工作副本。

如果有新版本可用,则没有内置功能指示某些工作副本自动更新。更新总是手动完成。

我相信你实际上需要某种“部署”功能(正如名称“live”所示)。部署不是SVN的工作。你需要一些其他的工具。

答案 5 :(得分:1)

大多数人已经用缩短的形式说过,我几乎没有新的东西 好。我会再试一次画出详细的图片

首先,问题在术语和业务任务方面都很糟糕。如果TEST是你的repo的WorkingCopy(似乎是这样),LIVE是带有内容的解压缩目录,与repo(HEAD)中的最新版本相同,那么你可以而且必须像在@crashmstr中所写的那样,在TSVN中使用post-commit hook来生成新档案

  • TortoiseSVN - 设置 - 挂钩脚本 - 添加
  • 挂钩类型 - 提交后,WC路径 - TEST路径,执行命令行 - /sameame.bat,等待和隐藏 - 标记

以下是我的Releaser.bat的相关部分(我在每次提交后使用custiom名称构建存档,因此使用subwcrev增加了一些复杂性)

SubWCRev.exe e:\Projs\CustomLocations e:\Projs\Builder.tpl  z:\Builder.bat
...
call z:\Builder.bat
来自Builder.tpl的

模板

"c:\Program Files\_Net\VisualSVN Server\bin\svn.exe" export e:\Projs\CustomLocations\trunk z:\trunk$WCDATE=%Y%m%d$-r$WCREV$

成为smth.like

"c:\Program Files\_Net\VisualSVN Server\bin\svn.exe" export e:\Projs\CustomLocations\trunk z:\trunk20110926-r1129

执行z:\ Builder.bat,结果我

  • 总是
  • 自动
  • 每次提交后

我的作品有新的单独版本,标有唯一ID。是的,它需要一些工作(一次)和SVN命令lene客户端的存在,但它是公平的价格