Lig*_*tCC 5 git git-push git-fetch git-clone orphan
当父提交图中没有包含它们的标签或分支时,就会创建孤立提交。例如,如果你犯了一个分支foo,添加提交a和b,然后删除分支(即删除引用foo从提交b),那么这两个a和b,除非你救了他们的哈希值将是不可到达的。
x-x-x-x <- master
\
a-b <- foo (reference then deleted or reset to somewhere on master)
Run Code Online (Sandbox Code Playgroud)
孤立提交的基本 Git 行为是最终垃圾收集并删除它们(我听说默认至少是 30 天)。
将以往的Git从一个回购移动孤儿提交到另一个使用git clone,git fetch或git push命令?
或者 Git 是否有效地忽略了任何不直接调用孤儿哈希(例如checkout或cherry-pick)的操作的这些提交?
在正常的 Git 工作流程中,这些提交将被忽略。这包括git clone,git push,和git fetch。但是,根据 Git 存储库托管服务器,如果需要,您可以将它们拉回到存储库中。
这就是我在“ github 是否记得提交 ID? ”中所描述的:通过GitHub 事件 API,您可以取回(例如)已删除分支的 SHA1,并在您自己的存储库中以这种方式恢复它。
这弥补了 agit reflog在远程端通常不可访问/公开的事实。
| 归档时间: |
|
| 查看次数: |
1347 次 |
| 最近记录: |