我在回购中进行了一些不定期的更改。在终端上输出:
--- a/app/something.java
+++ b/app/something.java
@@ -37,13 +37,17 @@ public class SomeController extends Controller{
requestVo.setJobName("temp1");
requestVo.setJobGroup("g1");
requestVo.setJobInfo(JobInfo.INFO);
- requestVo.setJobExecutionType(JobExecutionType.IMMEDIATE);
- requestVo.setExecutionTime(new Date());
+ requestVo.setJobExecutionType(JobExecutionType.TIMED);
+ requestVo.setExecutionTime(getExecutionTime(3600*1000l));
requestVo.setJobData("testing 123");
}
+ private Date getExecutionTime(long delay) {
+ return new Date(System.currentTimeMillis() + delay);
+ }
+
...
然后我继续进行git reset --hard HEAD
,因此丢失了更改。有什么办法找回更改吗?还是从终端将我的更改作为提交应用?
答案 0 :(得分:5)
如果您仍然有git diff
的完整输出,如问题中显示的摘录所示,您可以尝试:
git diff
输出并将其复制粘贴到文件diff.patch
中。也就是说:
git apply save.patch
# or
patch -p1 < save.patch
注意:这里首选git apply
,因为git diff
输出文件重命名的行,而输出patch
会忽略。
如果您没有完整的差异输出...则使用先前的答案/评论。
答案 1 :(得分:1)
git reset --hard
放弃您的未分阶段工作,然后转到上一个提交。运行此命令后,git没有任何更改记录。您必须使用其他方式,但是git在这里不能为您提供帮助。