- 我创建一个分支,
- 然后我在该文件夹(即分支)中添加一个新文件夹和一个新文件,
- 然后我执行一个
svn add
andsvn commit
。
然后我svn merge
回到我的后备箱。当我然后svn commit
到我的树干时,新文件夹得到“添加”,但文件夹内的文件得到“替换”操作。
为什么我会在此文件上获得替换状态?
svn add
and svn commit
。然后我svn merge
回到我的后备箱。当我然后svn commit
到我的树干时,新文件夹得到“添加”,但文件夹内的文件得到“替换”操作。
为什么我会在此文件上获得替换状态?
根据TortoiseSVN 手册 更换状态表示:
原始项目已被删除,并用相同名称的新项目替换它。
所以显然你应该仔细检查你已经执行的操作。您是否有具有相同文件夹和文件的旧版本(我的意思是它们的名称)?
您的本地副本中是否有任何已删除(本地)且未提交的文件夹/文件?如果您的主干中有一个文件夹/文件已在本地删除,则必须将该删除提交到存储库。
您的情况听起来可能没有并发本地副本。例如,您可能已删除本地副本中的文件夹/文件但未提交。然后,当您尝试将分支与本地副本合并时,本地删除的文件夹/文件(标记为删除,但未提交)将被分支的同名文件夹替换。由于先前未提交文件夹/文件删除,因此正式状态变为“已替换”。