我正在尝试获取具有最近更改的文件名的名称。例如,一个文件夹包含三个文件 file1.txt、file2.txt 和 file3.txt。我正在尝试拥有一个 powershell 脚本,该脚本根据 git log 或 rev-list 捕获文件的名称并选择它的名称。此外,如果有人添加了另一个名为 file4 的文件,那么它必须由变量选择。
cd folder
$latest_file = git log -n1 --pretty="format:" --name-only -- *.txt
# or $latest_file = git show --name-only $(git rev-list -1 --all *.sql)
cp $latest_file "some/another/folder/"
git log -n1 的问题是它只能在 file1.txt 更改时捕获文件名,而如果我更改 file2.txt 则它会失败,但是如果我更改 git log -n2 然后它会捕获 file2 中的 chagne但是如果 file1 被更改或者如果 file4 添加了,那么它就会失败。
git rev-list -a --all 的问题在于它提供了更多的输出,然后只是一个文件名,并且不知道如何使用像 log 这样的漂亮格式。
谢谢!