浅谈文件管理

文件管理

文件管理涉及到了文件夹的管理、文件的管理、文件与文件夹的命名等。

需要达到的效果是,你能非常方便的找到某一个文件,并从文件名称上知道其大致内容,同时还能兼具有一定的版本管理功能。

📝文件

对于目前我所面临的工作环境,大致有2类文件需要处理:

  1. 代码文件。比如 Vivado 项目、C/C++、Python、MATLAB等,这些不同的文件可以根据项目所使用的编程语言以及IDE来进行分类,如vivado/C/CPP/Python/MATLAB。这些文件夹既包含了原理验证部分的代码,也包含了实际项目代码。值得注意的是,许多部分可以通过git来管理版本。
  2. 文档文件。比如Xilinx官方手册、硬件手册、临时干活所收集到的文档以及项目文档(还包含一系列的图片)等。这里项目文档一般放置于项目对应的文档下,但是需要在文档文件夹下建立快捷方式。
  3. 其他文件。比如收集的视频、云文件、下载的.torrent以及资源等。

📁文件夹

不管是何种OS,其文件系统都是树形结构的。对于如何管理文件,其核心是制定工作流,参考这篇博客,我大概总结出的工作模式是:

  • 特殊文件夹,比如Download/文件夹,这个文件夹下可以管理很多软件安装包😂。
  • 定期Archive,定期整理临时文件,并把文件进行归档,注意写README.md
  • 定义好分类,这里的分类是指树结构:

file sys tree

可能会遇到的问题

  1. 如果距离上一次打开某一个文件时间比较久远,可能无法迅速找到对应的文件,此时可以借助工具。
  2. 对于Dev文件夹下的项目,必须配备相应的项目doc文档文件夹,用于管理项目,比如vivado文件夹下的工程需要配备一个doc文件夹,里面包含了各种.v文件的说明,Update Log以及整个项目的README.md文件。
  3. 重复的文件,比如遇到某一个datasheet,可能有不同的版本(厂商提供的,开发板提供的,官网的)。文件更新以及去重是一个比较麻烦的事情,其执行后的效果是能让你管理和检索文件起来更加方便、清晰,对于文档文件,因此这就要求文件有统一的命名方式。
  4. 版本问题,对于有git管理的文件夹而言,版本并不是大问题,但是其中的文件与版本是否对应则是一个需要考虑的事情,比如对于cadence中or cad软件中本身包括了Rev.Last Edit Time两个字段,那么需要使用者自己去同步所有的字段,这部分所造成的时间消耗将会变得很多,需要通过制定工作流的方式,以及约定好版本名称管理的方式来进行项目管理。

命名习惯

项目代码文件按照项目的命名规范来执行,比如Vivado项目中的一些固定文件夹。

对于文档文件,如果没有git进行管理,那么需要按照<name>_<date>.extenion来命名,文件夹前不需要有序号标识,要减少使用含义模糊的文件夹和文件名称,比如Data/dataAnalysis.xlsx

如果是临时文件,特别是项目合作中的文件,可以进一步划分为<author>_<name>_<date>_<time>.extension

如果是代码文件,请尽可能的使用git来管理版本,如果要手动管理版本,那么需要在README.md文件中自行添加特殊版本标识的信息

文件管理工作流

项目文件

项目管理流程

文档文件

文档管理流程

该工作流只是临时想出来的一个参考,不一定完全适用。


浅谈文件管理
https://blog.zorogh.top/2023/06/16/浅谈文件管理/
作者
ZoroGH
发布于
2023年6月16日
更新于
2024年4月21日
许可协议