Mar*_*air 1626
您可以使用以下命令:
git checkout HEAD -- my-file.txt
Run Code Online (Sandbox Code Playgroud)
...将my-file.txt
使用HEAD 更新索引的工作副本及其状态.
--
基本上是指:将此点后的每个参数视为文件名.这个答案的更多细节.感谢VonC指出这一点.
Axe*_*ect 124
自Git 2.23(2019 年 8 月)起,您可以使用restore
(更多信息):
git restore pathTo/MyFile
Run Code Online (Sandbox Code Playgroud)
上面的代码将恢复MyFile
上HEAD
(最后一次提交)对当前分支。
如果您想从其他提交中获取更改,您可以在提交历史上倒退。下面的命令将MyFile
在最后一次提交之前获得两次提交。您现在需要-s
( --source
) 选项,因为现在您在恢复源时使用master~2
而不是master
(默认):
git restore -s master~2 pathTo/MyFile
Run Code Online (Sandbox Code Playgroud)
您也可以从其他分支获取文件!
git restore -s my-feature-branch pathTo/MyFile
Run Code Online (Sandbox Code Playgroud)
Acu*_*nus 117
要将单个文件硬重置为HEAD:
git checkout @ -- myfile.ext
Run Code Online (Sandbox Code Playgroud)
请注意,这@
是简称HEAD
.旧版本的git可能不支持缩写形式.
要将单个文件硬重置为索引,假设索引为非空,否则为HEAD:
git checkout -- myfile.ext
Run Code Online (Sandbox Code Playgroud)
关键在于,为了安全起见,您不希望遗漏@
或HEAD
从命令中删除,除非您特别指的是仅重置为索引.
小智 33
要恢复到上游/主站,请执行以下操作:
git checkout upstream/master -- myfile.txt
Mil*_*lad 11
您可以使用以下命令:
git checkout filename
Run Code Online (Sandbox Code Playgroud)
如果您有一个具有相同文件名的分支,则必须使用以下命令:
git checkout -- filename
Run Code Online (Sandbox Code Playgroud)
小智 8
您可以使用以下命令重置单个文件
git checkout HEAD -- path_to_file/file_name
Run Code Online (Sandbox Code Playgroud)
path_to_file/filename
列出所有已更改的文件以使用以下命令获取
git status
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
492309 次 |
最近记录: |