IDEA小技巧 |
您所在的位置:网站首页 › 知乎看的文章无意中点了返回,如何找回 › IDEA小技巧 |
PS:我们这里对 Test1 文件的 add ,commit 以及 push 展开讨论 在本地 add 到暂存区但未 commit 的代码回滚方式 对于新增以及修改的文件直接鼠标右键文件进行回滚 回退最后一次提交,且只能回退最后一次提交,commit的内容都会被保留,被修改或新增的代码都会被保留 使用 undo commit 前注意:这里是选择变更列表,我们一般使用默认的就行 可以看见 Test1 变绿,回滚了提交,即回到了 add 状态 drop commit直接删除提交,并回退代码,被修改或新增的代码都会被复原 使用 drop commit 前使用后新增一次 revert 记录,并回退代码 使用 revert commit 前回滚一般是回滚最近一次提交,如果你想要回滚中间的提交,可能需要承受冲突合并等一系列问题 reset对于前面的 revert commit 以及 drop commit 都是单点的回滚,如果想要一次性的从最近的一次提交一步一步地到指定的提交,这时候就需要用到 reset 了 soft在选定提交之后所做的所有更改都在暂存区中 commit的内容都会保留,其新增文件 + 文件变更都在暂存区 mixed在选定提交之后所做的更改将被保留,但不会暂存以进行提交。 commit的内容都会保留,新增文件在工作区,文件变更在暂存区 hard在选定提交之后所做的所有更改都将被抛弃(暂存和已提交) commit的内容+暂存区的内容全部被丢弃 keep在选定提交之后的已commit内容将被丢弃,但未commit的部分将保留 commit部分内容被丢弃,未commit部分保留 示例选择 hard ,结果是 在选定提交之后所做的所有更改都将被抛弃(暂存和已提交) commit 的内容+暂存区的内容全部被丢弃 已经 commit 并且 push 的代码回滚方式 发生问题场景想要重新生成 commit message 代码没写好给 push 到远程仓库了 以下是我们的预期示例图 由于 git 对代码的保护机制,导致我们无法直接将原F删掉,替换成我们的新的F’,所以我们需要采用特殊的手段达到目的,即 强推 首先我们将本地的代码推送到远程仓库 假如这个时候我们想要修改 commit message,那这个时候就需要以下操作 然后 reset 我们远程的分支 这时候如果我们再 commit test ,然后 push 的话会报错 这是处于 git 的保护机制,想要我们处理冲突,我们显然是不想处理的,而是直接替换掉远程仓库的 test 提交 那么这个时候就需要使用 强推 这个操作了 但是我们这个时候 force push 是灰色的,怎么回事呢? 嘿嘿,不急 打开设置,删除受保护分支。 这时候就可以点击 强推 了 这时候远程分支就和本地分支一致了 这时你就可以重新上传分支到远程仓库了 另外注意强推有风险,如果你的项目是多人开发的话,很有可能会覆盖别人写的代码,造成不可挽回的后果 代码找回如果我们不小心误回滚了我们的代码如何找回呢 这时我们可以随地找出空白处右键 这个时候我们即可通过 revert 进行代码找回 本篇文章参考于:https://www.bilibili.com/video/BV1Wa411a7Ek/?spm_id_from=333.880.my_history.page.click |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |