git签出究竟如何影响提交和隐藏?
我没有在在线git中找到我的答案 很明显,git签出具有破坏性,因为它会丢弃本地修改,但它是否也会通过更改树的结构来破坏提交?例如,假设我有三个提交git签出究竟如何影响提交和隐藏?,git,diagram,commit,Git,Diagram,Commit,我没有在在线git中找到我的答案 很明显,git签出具有破坏性,因为它会丢弃本地修改,但它是否也会通过更改树的结构来破坏提交?例如,假设我有三个提交 a <-- b <-- c | HEAD + stash c a提交不引用子级,只引用父级。而且不止一个孩子可以有同一个父母。所以我认为答案是“结帐”应该被视为一个树的遍历加上修剪,因为所有的孩子都会永久丢失。没有强调这一点。“不引用”和“擦除”是完全不同的事情。好吧,现在我明白了。gi
a <-- b <-- c
|
HEAD
+ stash c
a提交不引用子级,只引用父级。而且不止一个孩子可以有同一个父母。所以我认为答案是“结帐”应该被视为一个树的遍历加上修剪,因为所有的孩子都会永久丢失。没有强调这一点。“不引用”和“擦除”是完全不同的事情。好吧,现在我明白了。git签出只移动头部,而不移动“主”。git log master显示完整的分支。reflog可能会成为您的朋友
a <-- b <-- c
|
HEAD
+ stash b
a <-- b
|
HEAD
+ stash b