如何切换到具体的git的承诺,而不会丢失之后所做的所有提交 ?
我想是本地文件将被改变,但提交数据库将保持不变,只有当前位置指针设置为当前选择的承诺。
我想改变文件的状态,以具体的承诺,跑项目,完成后,恢复文件回到上次提交。
如何做到这一点没有荏苒整个项目的文件夹?
如何切换到具体的git的承诺,而不会丢失之后所做的所有提交 ?
我想是本地文件将被改变,但提交数据库将保持不变,只有当前位置指针设置为当前选择的承诺。
我想改变文件的状态,以具体的承诺,跑项目,完成后,恢复文件回到上次提交。
如何做到这一点没有荏苒整个项目的文件夹?
如果你在某个分支mybranch
,先走一步, git checkout commit_hash
。 然后你就可以返回到您的分支git checkout mybranch
。 我有同样的游戏平分一个bug今天:)另外,你应该知道的git平分 。
首先,使用git log
来查看日志,选择你需要的承诺,记下用于标识提交SHA1哈希。 接下来,运行git checkout hash
。 设置完毕后, git checkout original_branch
。 这样做不动了头的优势,它只是切换工作副本到一个指定的提交。
除了其他的答案在这里向您展示如何git checkout <the-hash-you-want>
这是值得知道你可以切换回你在哪里使用:
git checkout @{-1}
这通常比更方便:
git checkout what-was-that-original-branch-called-again-question-mark
正如你所预料, git checkout @{-2}
会带你回到你在两个分支git checkout
前S,同样地,对于其他数字。 如果你还记得你在哪里了更大的数字,你应该得到某种奖牌为的。
可悲的是生产力, git checkout @{1}
不带你去,你就会对分公司的未来,这是一种耻辱。