【问题标题】:Git reset all files with particular extensionGit重置具有特定扩展名的所有文件
【发布时间】:2020-02-13 00:17:01
【问题描述】:

我对@9​​87654322@.scss.scss.d.ts等多种类型的文件进行了更改,并已提交并推送到我的分支。

有什么方法可以让我只用 master 重置扩展 .scss.d.ts 吗?

保留 .tsx.scss 中的更改,仅使用 master 重置 .scss.d.ts

谢谢

【问题讨论】:

标签: git github git-reset


【解决方案1】:

你可以先输出一个路径列表

git ls-files master -- *.scss.d.ts

然后可以将该列表发送到checkout 命令* 以将它们中的每一个恢复到它们在master 上的状态

git checkout master -- $(git ls-files master -- *.scss.d.ts)

* 请注意,由于最近的 git 版本,您也有 git restore 以达到相同的效果

git restore --source=master '*.scss.d.ts'

【讨论】:

  • 我能得到最简单的信息,但第二个命令对我不起作用。
  • 是的,文件已提交并推送到分支。 :(
  • @antikd "文件已提交并推送到分支。"你似乎暗示这是一件坏事。为什么?另外,什么“不起作用”?你有错误吗?您的文件出现意外状态?
  • git checkout master -- $(git ls-files -- *.scss.d.ts) 给出这些错误错误:pathspec 'pathtofile.scss.d.ts' 与 git 已知的任何文件都不匹配。
  • 此错误出现在 8 个文件中,并且所有文件都存在。
【解决方案2】:
git reset master -- "*.scss.d.ts"

【讨论】:

    猜你喜欢
    • 2019-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-25
    • 2013-01-08
    相关资源
    最近更新 更多