我如何删除已从Repo删除但尚未从本地删除的文件?
基本上,我正在使用powershell编写一个构建脚本,需要从Repo中获取最新的更改并进行检出,但可能有一些文件已从Repo中删除,但仍未从我的本地检出中删除。我的意思是,一个解决办法就是删除所有内容并进行干净的检出,但那太过昂贵,需要很长时间。我也可以做一个svn状态,并查找任何带有"D"的内容并在本地将它们删除,但那太麻烦了。我希望也能覆盖任何冲突和--force检出需要合并的文件。
是否有一些简单的命令,例如还原或检出开关,我错过了吗?
*编辑:实际上,我需要处理两种不同的情况:
A)在一个部分中,我需要保留工作副本中的任何修改并只检出没有冲突或合并的更改。我需要这个永远不会中止,这意味着我只想扔掉任何有问题的东西并保留工作/本地副本。
我想使用:svn update --accept mine-full --force(注意:这在根目录上而不是单个文件上)
B)在另一个部分中,我想覆盖任何更改并删除从repo中删除的文件。
我想使用:svn update --accept theirs-full --force(注意:这在根目录上而不是单个文件上)
这会起作用吗?还是--force(或--accept)不是我要使用的?
我使用update的主要担忧是,如果出现问题,它将中止整个过程,对吧?svn update与--force做了什么?它也不删除未版本化的项目。
恢复也不完全是我需要的,对吧?它不会删除我未版本化的任何项目。
此外,如果本地已经有文件,那么检出是否只会做与更新相同的事情呢?如果还没有任何内容存在,那么只需使用checkout将更简单。问题是,我无法指定--accept参数与svn checkout一起使用。我想我可以测试文件夹是否存在,然后相应地进行检查或更新。
基本上,我正在使用powershell编写一个构建脚本,需要从Repo中获取最新的更改并进行检出,但可能有一些文件已从Repo中删除,但仍未从我的本地检出中删除。我的意思是,一个解决办法就是删除所有内容并进行干净的检出,但那太过昂贵,需要很长时间。我也可以做一个svn状态,并查找任何带有"D"的内容并在本地将它们删除,但那太麻烦了。我希望也能覆盖任何冲突和--force检出需要合并的文件。
是否有一些简单的命令,例如还原或检出开关,我错过了吗?
*编辑:实际上,我需要处理两种不同的情况:
A)在一个部分中,我需要保留工作副本中的任何修改并只检出没有冲突或合并的更改。我需要这个永远不会中止,这意味着我只想扔掉任何有问题的东西并保留工作/本地副本。
我想使用:svn update --accept mine-full --force(注意:这在根目录上而不是单个文件上)
B)在另一个部分中,我想覆盖任何更改并删除从repo中删除的文件。
我想使用:svn update --accept theirs-full --force(注意:这在根目录上而不是单个文件上)
这会起作用吗?还是--force(或--accept)不是我要使用的?
我使用update的主要担忧是,如果出现问题,它将中止整个过程,对吧?svn update与--force做了什么?它也不删除未版本化的项目。
恢复也不完全是我需要的,对吧?它不会删除我未版本化的任何项目。
此外,如果本地已经有文件,那么检出是否只会做与更新相同的事情呢?如果还没有任何内容存在,那么只需使用checkout将更简单。问题是,我无法指定--accept参数与svn checkout一起使用。我想我可以测试文件夹是否存在,然后相应地进行检查或更新。
svn up
命令无法正常工作吗?它应该会为您删除文件(但同时也会更新其余的工作副本)。 - crashmstr