我的开发人员通过电子邮件向我发送了该项目的压缩文件夹。由于他目前不在,我想知道他通过电子邮件发送给我的文件夹是否包含.svn文件或文件夹。
我想将此文件夹(项目)部署到生产服务器,所以我想在没有.svn混乱的情况下进行此操作。
乍一看,解压缩文件夹时,我看不到任何.svn文件或文件夹。
这是否意味着它不包含任何与svn相关的混乱?
它是否也意味着这是一个普通的副本,而不是我的开发人员的计算机上的工作副本,或者他已经通过导出或手动将其从svn中删除了?
答案 0 :(得分:2)
如果没有.svn
文件夹,那么存档中没有颠覆技术数据(即:mess)。在Unix,Linux或Windows上使用Cygwin,您可以从根目录运行以下命令来查找和.svn
目录:
find . -name .svn -type d
在Windows上没有Cygwin,您可以右键单击根目录,在中选择Search
类型.svn搜索名为的文件或文件夹,在搜索中选中Type
选项,然后在下拉菜单中选择Folder
。点击Search Now
和voilà。
如果此命令没有任何结果,则开发人员的交付中没有颠覆技术数据。
它不知道开发人员是如何做到这一点的,但他可能是使用svn export
命令完成的。由于此命令允许您从URL或工作副本导出,因此无法确定存档的确切来源。
答案 1 :(得分:1)
在Linux / Mac OS X上,您可以通过在shell中运行ls -a
来检查这些内容(例如使用终端)。 -a
标志告诉ls
显示“所有”文件,包括隐藏文件(以“。”开头)。
您还可以使用find . -name ".svn"
,它具有递归到子目录的额外好处。这可能对您的方案更好,因为开发人员可能刚刚删除了根“.svn”目录并且意外地离开了子目录。
答案 2 :(得分:0)
SVN在工作副本的每个文件夹中放置一个.svn
文件夹,因此您应该确保没有文件夹包含.svn
子文件夹。
要在unix环境中执行此操作:
find . -name .svn
如果要删除它们,请执行
find . -name .svn -exec rm -r {} \;
答案 3 :(得分:0)
请注意,在Windows下,还存在将这些目录命名为_svn以解决操作系统限制的选项。
因此,除非您知道没有Windows靠近您的来源,为了100%安全,您将需要检查.svn和_svn(父文件夹上的普通文件搜索将在任何下方找到它们)操作系统)。