我使用乌龟svn。我添加了一个文件夹并将其提交给subversion repo。然后,我的同事做了一些事情,犯了一个错误,并删除整个文件夹,并要求我重新提交工作文件。
但是现在,当我点击tokise svn->提交,它说“没有文件被更改或添加”。服务器仓库中的文件不再是整个文件夹都消失了。
如果我点击更新,它将删除我的本地文件夹,我不希望这样。我想要的是重新将我在本地文件夹上的任何内容重新发送回repo。我该怎么做?
感谢。
答案 0 :(得分:2)
您需要还原您的同事所做的更改。
首先,备份已删除的文件夹。现在更新该文件夹的父目录。然后转到父文件夹 - >右键单击它 - > '显示日志' - >找到你的同事做的改变的条目 - >右键单击它 - > '还原此修订版的更改'。检查工作副本中的目录是否已恢复。
现在从备份中复制更改的文件(如果有的话),不要忘记svn add
个新文件(如果有的话)。仅提交您的目录(否则您的同事所做的其他更改也将被还原)。现在右键单击父文件夹 - > 'Revert'(这将恢复与删除的文件夹无关的同事修改)。
顺便说一下,了解还原已提交的更改的作用非常重要:它会将提交中的更改应用于“向后”还原到您的工作副本。因此修订/提交不会从存储库中消失。
答案 1 :(得分:1)
好吧,你可以将你的本地文件夹复制到其他地方,更新,然后移回文件夹,将它添加到subversion并提交(并用棍子打你的同事)
答案 2 :(得分:0)
如果您使用的是svn的终端版本,则需要将文件“添加”到提交(svn add
)。在Tortoise svn的某个地方应该有一个命令来做到这一点。
答案 3 :(得分:0)
您只需将更改提交到新分支即可 如果您不想切换主开发。到一个新的分支,只需:
答案 4 :(得分:-1)
假设您的同事不仅删除了目录,而是移动了目录或在其他位置创建了另一个目录,您可以使用'svn switch'(或等效的乌龟)将当前的工作副本重新指向新的存储库位置。之后你可以安全地再次提交。