我想跑
git reset *.foo
Run Code Online (Sandbox Code Playgroud)
但这个错误了.
我想我需要使用烟斗,但我不知道该怎么做.
谢谢!
现在git restore工作正常,因此对我来说最简单的是:
git restore '*.foo'\nRun Code Online (Sandbox Code Playgroud)\n就像 @C\xc3\xa9sar Nore\xc3\xb1a 答案一样。
\n然而,另一种非常简单且非常灵活的方法是:
\ngit diff --name-only --relative | grep '.foo' | xargs git restore\nRun Code Online (Sandbox Code Playgroud)\n它很灵活,因为您可以使用所有grep选项,甚至可以grep用其他选项替换。
for i in `git status --porcelain | grep '^D.*\.foo$' | sed 's/^D \+//'`; do
git reset HEAD "$i"
git checkout "$i"
done
Run Code Online (Sandbox Code Playgroud)
如果您使用的是Powershell,则以下内容将起作用.
gci -re -in *foo | %{ git reset $_ }
Run Code Online (Sandbox Code Playgroud)
这应该适用于 cygwin 和 unix 环境
git reset $(git diff --name-only --cached | grep *.foo)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8256 次 |
| 最近记录: |