默认情况下,IntelliJ Idea将插入(类似)以下内容作为新源文件的标题:
/**
* Created by JohnDoe on 2016-04-27.
*/
相应的模板是:
/**
* Created by ${USER} on ${DATE}.
*/
是否可以更新此模板,以便在更改文件时插入最后修改日期?例如:
/**
* Created by JohnDoe on 2016-03-27.
* Last modified by JaneDoe on 2016-04-27
*/
检测到文件更改后,PHPStorm没有用于启动任务的“挂钩”(仅用于在服务器中上传)。代码模板基于文件的创建而不是更改。
您想要的行为(手动更改文件后自动更改文件)可以用于很多事情,但它是编辑器的循环头条。因为如果您更改文件,它必须更改文件(如果文件更改?它更改文件?)。
但是,当您启动“重新格式化代码”时,您可以“启用实时模板”,该代码能够重写您的开始模板代码,从而重写日期修改。
其他解决方案是使用工具与grunt但我不知道是否管理PHP文件。
这是一个类似于我正在使用的工作解决方案。在mac os上测试过。
Last modified by JaneDoe on $DATE
:
#!/bin/bash
FILE=src/java/test/Test.java
DATE=`date '+%Y-%m-%d'`
PREFIX="Last modified by JaneDoe on "
STRING="$PREFIX.*$"
SUBSTITUTE="$PREFIX$DATE"
if ! grep -q "$SUBSTITUTE" "$FILE"; then
sed -i '' "1,/$(echo "$STRING")/ s/$(echo "$STRING")/$(echo "$SUBSTITUTE")/" $FILE
fi
File Watchers
插件。Program
字段。现在每次文件更改时,日期都会更新。如果要分别更新每个文件的日期,则应将参数$FilePath$
传递给脚本。
它不支持开箱即用。我建议您不要在文件中包含有关作者和上次编辑/创建时间的信息。
原因是您的版本控制系统(Git,SVN)自动包含相同的信息。因此,手动标记只是已有信息的重复,但只是更容易出错,需要手动更新。