首页 > 解决方案 > 编译时如何捕获更改的.c文件列表?

问题描述

我使用的eclipse版本分析编译阶段出现的.o文件,在编译前分析哪些文件已经更新,从而将编译时间缩短到只需要更新的地方。为了变更管理,有没有办法可以捕获这个更新文件列表?

我想要 ::

  1. 捕获列表。
  2. 逐一浏览文件并将更改复制到“备份”文件夹。
  3. 创建一个脚本,允许我“恢复”更改,然后让我知道哪些文件被更改。

这样,如果出现错误,我可以回到工作版本并根据需要重新开始,或者对代码执行调试。我想我可以做第 2 部分和第 3 部分,我只需要第 1 部分的帮助

编辑 1:2019 年 4 月 2 日:关于 GIT:我会尝试这个,但似乎我可能需要等待获得公司的批准才能将其安装在我的系统上。此外,我想确保我公司中的其他人(在本地)可以使用此类功能,即使他们可能没有安装 Git(因为无论出于何种原因,它都不是标准的)

因此,我找到了 3 个可能的选项:

1) forfiles :有一个选项可以让您查找在某个日期之后修改的所有文件。可以结合复制命令将每个单独的文件复制到所需的文件夹。缺点:只使用日期,我没有发现使用时间作为过滤机制在特定时间后建立更改的此类引用。

2) Get-ChildItem : 可以过滤以仅查找在一定时间后更改的文件。输出可以发送到文件夹,文件和文件路径可以在其中解析为 csv 文件,该文件可以轻松用于确定更新了哪些路径中的哪些文件,然后稍后降级这些文件。此相同列表还可用于确定需要复制的文件

3) XCopy : 可以使用 /d [:MM-DD-YYYY] 修饰符查找在某个日期之后修改的所有文件,但我没有看到可用的时间选项,这意味着我必须检查复制的文件覆盖并删除所需时间之前的任何修改,仅保留之后修改的。*信息来源 :: 在 Windows 上使用命令行查找在给定日期之后修改的文件

此时,在列出的 3 个选项中,Get-ChildItem 可能是最佳选项。当我决定一个选项时会更新更多

标签: pythonceclipsebatch-file

解决方案


签出 os.stat 包,其中有 st_mtime,以检查上次更改文件的时间。但是您必须管理存储最后的更改,并在更改时进行备份。如果你是懒惰的,我有一个东西,在 Pypy 上比较扎实,叫做看门狗。


推荐阅读