假设我有一个包含数百个文件的目录.我修改了其中几个,但之后我意识到我的改变很糟糕.如果我做:
git checkout whole_folder
Run Code Online (Sandbox Code Playgroud)
然后一切都会再次检出,我必须重新编译所有内容.有没有办法让checkout只影响修改过的文件,还是我需要checkout分别在每个文件上运行?
hol*_*eek 17
试试这个:
$ git checkout `git ls-files -m`
Run Code Online (Sandbox Code Playgroud)
-m仅列出已修改的文件.
但
git checkout -- $(git ls-files -m)
Run Code Online (Sandbox Code Playgroud)
还签出已删除的文件。
如果您只想签出修改后的文件,这对我有用:
git checkout -- $(git status -uno | grep --colour=never '#' | awk '{ print $2 $3 }' | grep --colour=never ^modified: | cut -c10-)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7746 次 |
| 最近记录: |