wordpress - Git 状态 - 仅列出有更改的直接子文件夹,而不是内部文件
问题描述
我喜欢使用 Git 来组织版本控制并在 Wordpress 中备份我的所有 Web 文件。
更新插件后,我想通过使用仅在直接子文件夹上获取更改列表git status
。通常,如果执行 git status 将进行很长的更改,包括每个子文件夹的内部。我想要的是将结果限制为具有plugins
目录内更改的子文件夹。
例如,这个 git 命令:
git status project_folder/wp-content/plugins
将导致:
plugins/wpml-translation-management/classes/translation-basket/
plugins/wpml-translation-management/classes/translation-dashboard/
plugins/acfml/assets/
plugins/acfml/classes/class-wpml-acf-attachments.php
plugins/wordpress-seo/js/dist/commons-921.min.js
plugins/wordpress-seo/js/dist/components-921.min.js
实际上, git 命令会生成一个非常长的行列表,如屏幕截图所示:
我想知道的是仅输出的 git 命令:
plugins/wpml-translation-management/
plugins/acfml/
plugins/wordpress-seo/
命令如下:
git status project_folder/wp-content/plugins --{display_only_direct_subfolders_with_changes}
解决方案
试试这个:
git status --porcelain | awk '{print $2}' | xargs -n 1 dirname | uniq
awk '{print $2}'
从列表中获取文件名
xargs -n 1 dirname
从完整路径中提取目录
uniq
仅显示唯一目录
uniq
当你有很多行时可能会慢一点
推荐阅读
- mongodb - MongoDB:为两个不同的用户找到相同的条目?
- python - 并行 Python-C++ 程序冻结(内存?)
- angular - ng:键或 ID 为“http://json-schema.org/draft-06/schema”的模式已存在
- php - 未定义索引:执行 IF 和 Elseif
- tensorflow - 关于下载特定tensorflow版本的url链接
- python - 如何在 setup.py (pySFML) 中指定 C++ 头文件和库文件夹?
- api - Tumblr API 返回错误代码 1016
- ruby-on-rails - 在 Ruby on rails 应用程序中启用 https ssl
- php - PHP While循环不起作用但没有错误
- java - “不能从静态上下文引用非静态方法”但没有静态变量或方法