Pat*_*uld 2 git version-control
我在(无分支)分支上做了一个提交,然后做了一个拉,意识到我在错误的分支上并做了一个'结账大师'和另一个拉.我现在找不到我的原始提交推送主分支,我无法切换到(无分支).有没有办法恢复我的提交或获得差异?
在git reflog将列出你所有你做的提交,以及(例如)git merge HEAD@{1}将合并其放回你的分支.
$ git reflog
734713b... HEAD@{0}: commit: fixed refs handling, added gc auto, updated
d921970... HEAD@{1}: merge phedders/rdocs: Merge made by recursive.
1c002dd... HEAD@{2}: commit: added some blame and merge stuff
Run Code Online (Sandbox Code Playgroud)
<refname>@{<n>}, e.g. master@{1}
Run Code Online (Sandbox Code Playgroud)
一个REF后跟后缀
@与封闭在一对括号(例如一个序规范{1},{15})指定ref的第n个先前值.
请注意,a git rebase -i会做同样的事情.
该修正选择页提到:
重要的是要注意
reflog信息是严格本地的 - 它是您在存储库中所做的事情的日志.
其他人的存储库副本的引用不一样; 在您最初克隆存储库之后,您将拥有一个空的reflog,因为您的存储库中尚未发生任何活动.
配置gc.reflogExpire指定何时删除早于此时间的reflog条目; 默认为90天.
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |