如果我创建一个新的分支,作一些提交,然后决定,“哇,我还没有做什么好这里,”我删除分支(git branch -d branchname
)做那几个提交走开呢?在中,它们是否从我的git日志中消失?如果你删除了一个git分支,它的提交是否与它一起进行?
3
A
回答
3
当没有分支引用它们时,提交将不会在git log
中显示,但它们将保留一段时间以防止意外丢失工作。有几个安全层:
- 承诺只考虑过垃圾收集,如果他们不再引用。这通常发生在如果只有一个分支/ ref引用它们,并且您删除该ref。
- 除非配置不同,Git会保留日志分公司的老态(“引用日志”)。 Reflog条目最终会过期,但要受到可配置的年龄阈值的限制(实际上有两个:reflog条目包含可从分支的当前状态到达的东西,另一个用于不再从分支可到达的东西;默认情况下后者是30天)。在此之前,
git gc
会保留您的reflog条目,并且不会删除通过这些reflog条目仍然可以访问的提交。 - 即使强制清除推荐日志,
git gc
仍然会保留对象,如果它们是在不到两周前创建的(默认情况下是可配置的)。 - 毕竟,当你运行
git gc
对象被物理删除。
要查看推荐日志,请尝试git log -g SOMEBRANCH
。
3
是的,他们从git的日志消失,不,他们不从资源库中消失,直到后来git gc
(垃圾收集器)命令。
你仍然可以找到使用git reflog
命令这些提交。
相关问题
- 1. 如果它是分支中唯一的提交,我该如何删除第一个和唯一的提交?
- 2. 删除Git中提交并与它
- 3. 如何真正删除一个git分支(即删除所有对象/提交)?
- 4. 删除git远程分支提交
- 5. Git分支删除[AWS代码提交]
- 6. 的Git从一个分支删除一个文件,把它放在主
- 7. 提交然后签出git中的另一个分支进行旧提交?
- 8. 有没有办法从一个分支中删除提交并将它们放入另一个分支?
- 9. 使用git,我如何忽略一个分支中的文件,但让它在另一个分支中提交?
- 10. 如果我删除了一个git子模块......它是否真的从回购中消失了?
- 11. 删除Git修订的一个分支
- 12. git只推送一个分支提交
- 13. git删除了一个分支,但仍然在master上进行更改
- 14. Git:如何删除出现在另一个分支上的重复提交?
- 15. 我需要删除一个提交到一个分支
- 16. 在删除分支后识别Git中的提交分支
- 17. Git在第一次提交时删除分支时在远程分支上提交提交
- 18. 删除GIT中一个文件提交
- 19. 删除表行它是一个外键
- 20. 如果你在分支之前忘了创建它,你如何在git上创建'master'分支?
- 21. 在Git中删除一个“基”分支
- 22. Git - 从分支中删除提交并保持进度
- 23. Git分支。如何将一个提交分配给一个分支?
- 24. 删除行,如果它是由另一个查询
- 25. Git:如何提交更改,就好像它是与另一个分支的合并?
- 26. 如何列出合并到master的git分支并删除分支(如果它看起来不错)?
- 27. 删除重复行 - 除了它包含了一个“{”或“}”
- 28. GIT中替换其间与另一分支提交提交
- 29. 是否可以将多个分支与git中的一个进行比较?
- 30. Git推送交叉分支,从一个分支获取提交到另一个
谢谢你的回答彻底! – Costa