玩转git的第6章节:git的smart checkout与force checkout

这篇具有很好参考价值的文章主要介绍了玩转git的第6章节:git的smart checkout与force checkout。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一  介绍smart chekcout和force checkout

1.1 smart&force的checkout介绍

1.smart  checkout: 把冲突的这部分内容带到目的分支

2.force  checkout:就不会把冲突的这部分内容带到目的分支,但是你在当前分支修改的所有内容都会丢失,就算你再切回来会找不到,需要慎重操作。

3.Do not checkout :是不切分支,继续留在当前分支;

1.2 结论

当前分支修改内容后,进行add,commit操作之后,切换到其他分支,再切回到当前分支,当前分支不会丢代码。所以一定要在当前分支进行add,commit操作后,切换到其他分支。

二  案例操作

2.1 情况1:当前分支不进行commit操作,选择smart checkout

1.假设现在在dev分支,进行修改了文件:AddLog (输出2222),然而没有进行add,commit操作

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

2.打开commit窗口,但是就是不提交。 就是玩,就是玩,哈哈!

玩转git的第6章节:git的smart checkout与force checkout,git,git,github3.此时没有进行commit操作,而要切换到ljf_dev分支,如下提示:

 1.smart  checkout: 把冲突的这部分内容带到目的分支

 2.force  checkout:就不会把冲突的这部分内容带到目的分支,但是你在当前分支修改的所有内容都会丢失,就算你再切回来会找不到,需要慎重操作。

 3.Do not checkout :是不切分支,继续留在当前分支;

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

4.这次我们选择,默认smart checkout,紧接着弹出:这里选择rollback和cancel都是一样的 

玩转git的第6章节:git的smart checkout与force checkout,git,git,github5.现在在ljf_dev分支查看:看到dev分支修改的内容,并没有带过来

玩转git的第6章节:git的smart checkout与force checkout,git,git,github6.再切换到dev分支,问题出现了

切换到ljf_dev之前的输出内容:System.out.println("222222"); 丢失了!!!!!!!!!

惊不惊喜,意不意外?????

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

 2.2 情况2:当前分支不进行commit操作,选择force checkout

1.假设现在在dev分支,进行修改了文件:AddLog (输出2222),没有进行add,commit操作

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

2.打开commit窗口,但是就是不提交。

玩转git的第6章节:git的smart checkout与force checkout,git,git,github 3.此时没有进行commit操作,而要切换到ljf_dev分支,如下提示:

1.smart  checkout: 把冲突的这部分内容带到目的分支

2.force  checkout:就不会把冲突的这部分内容带到目的分支,但是你在当前分支修改的所有内容都会丢失,就算你再切回来会找不到,需要慎重操作。

3.Do not checkout :是不切分支,继续留在当前分支;

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

4.这次我们选择,默认force checkout,成功切换到ljf_dev,可以看到,dev分支修改内容没有带过来

玩转git的第6章节:git的smart checkout与force checkout,git,git,github 5.再切换到dev分支:问题也出现了

切换到ljf_dev之前的输出内容  System.out.println("222222"); 丢失了,!!!!!!!!!!!!!

 玩转git的第6章节:git的smart checkout与force checkout,git,git,github

  2.3 情况3:当前分支进行commit操作

1.这次修改后,进行提交之后,再切换分支。

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

2.进行commit提交操作 

玩转git的第6章节:git的smart checkout与force checkout,git,git,github 3.成功提交后:切换到ljf_dev, 没有任何提示框,成功切换到ljf_dev分支

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

4.然后再切回dev分支。切换分支前的内容还在。 

玩转git的第6章节:git的smart checkout与force checkout,git,git,github

结论:当前分支修改内容进行add,commit操作之后,切换到其他分支,再切回到当前分支,当前分支不会丢代码。 

 文章来源地址https://www.toymoban.com/news/detail-670362.html

到了这里,关于玩转git的第6章节:git的smart checkout与force checkout的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 西门子PLC-S7200smart--------------章节一modbus TCP通信

    提示: 本篇文章主要包含以下内容:西门子编程软件下载和新建工程、modbus TCP协议、modbus TCP工程代码和modbus poll上位机软件,下面有免费下载链接! 以下是本篇文章正文内容 浏览器搜索西门子,打开西门子官方网址,然后按照下图所示顺序依次点击,就能找到西门子对应系

    2024年02月08日
    浏览(47)
  • 通过一篇文章带你玩转git和GitHub

    在现代软件开发中,版本控制系统是不可或缺的工具。Git和Github是其中最受欢迎的组合。Git是一个开源的分布式版本控制系统,用于追踪代码的改动,而Github则是一个基于Git的代码托管平台,提供了代码托管、协作开发等功能。 Git的基本用法 安装与配置 :首先,你需要在你

    2024年03月10日
    浏览(49)
  • git 常用命令之 git checkout

    大家好,我是 17。 git checkout 是 git 中最重要最常用的命令之一,本文为大家详细解说一下。 checkout 的用途之一是恢复工作区。 checkout . 表示恢复工作区的所有更改,未跟踪的文件不会有变化。 恢复工作区的所有文件风险比较大,会丢失所有工作区的修改,一定要慎用 中间加

    2023年04月13日
    浏览(80)
  • git checkout 命令

    git checkout 命令用于更新工作区的文件使它们和指定提交或暂存区保持一致,也就是会从指定提交(或者暂存区)中拷贝文件到工作区替换掉原有的文件,也可用于切换分支(切换分支的同时也会更新工作区和暂存区的文件)。 更新工作区的指定文件,使它和暂存区保持一致

    2024年02月09日
    浏览(41)
  • Git分支篇git branch和git checkout

    在开发过程中,项目往往由多人协同开发,那么将多人编写的代码汇总到一起就成了一个困难且复杂的工作,另外项目也需要备份和版本迭代,因此不能只有一个版本。因此分支就成为了优秀的解决方案。 分支相互独立,不同部门在不同分支开发,分支由主分支构建,分支代

    2024年02月06日
    浏览(46)
  • Git - 如何checkout一个tag

    在版本管理中,Tag就是用来标记和保存一个配置状态,用来对配置进行跟踪和备份。 在发布版本时,一般都会创建一个Tag。然后用这个Tag就能引用到这个版本。 在Git中,如果知道一个Tag状态,如何在本地将配置切换到该状态呢? 使用checkmout命令,加上tag名,就可以切换到

    2024年02月09日
    浏览(34)
  • GIT - checkout指定head的某个文件

    可以使用如下命令: 其中  commit  是要检出的目标提交的 SHA-1 标识符或分支名称,  path/to/file  是要检出的文件路径。这个命令会将指定提交中的指定文件覆盖当前工作目录中的同名文件,并将文件的更改提交到暂存区域。 如果只需要查看文件而不是将其检出到工作目录中

    2024年02月02日
    浏览(43)
  • Git checkout 某个版本到指定文件夹下

    我不想checkout到覆盖本地工作区的文件, 而是想把该 版本checkout到另外一个文件夹下,检出看看,这个文件夹不被git管理 将 commit_hash 替换为你想要检出的具体commit的哈希值,new_folder 替换为你想要保存文件的新文件夹路径。 这条命令会创建一个对应版本的tar临时归档文件,

    2024年02月08日
    浏览(53)
  • 【Git】解决Untracked Files Prevent Checkout的问题

    本文目录 一、背景描述 二、问题原因 三、解决方案 3.1 方案1--删除文件 3.2 方案2-- 提交这些文件 3.3 方案2--git命令切换分支 使用的工具:Windows10 + Idea + Git 今天从Git服务器上通过 Git Bash Here(如下图所示),克隆下来一个新的项目,此时一般都是master分支。 此时使用 Idea 打开

    2024年02月03日
    浏览(33)
  • git push --force 后如何恢复上次提交

     首先 git push --force 这个命令一定要慎用,可能会导致一些代码丢失; 在我们日常的开发中,往往会出现这样的情况,一次commit提交是错误的,需要进行撤回;但是当改动内容过多,直接改代码比较麻烦,那么有些人可能就有一些取巧的办法,使用 git push --force  撤回代码,

    2024年02月10日
    浏览(130)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包