git 将其它分支的文件检出到工作区

这篇具有很好参考价值的文章主要介绍了git 将其它分支的文件检出到工作区。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

主要是使用如下命令:

git checkout [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>…​

覆盖与 pathspec 匹配的文件的内容。当没有给出<tree-ish> (通常是一个commit)时,用 index 中的内容覆盖工作树。当给出<tree-ish>时,用<tree-ish>处的内容同时覆盖 index 和工作树。


由于前一个的合并失败,index 可能包含未合并的条目。默认情况下,如果您试图从 index 中检出这样的条目,则 checkout 操作将失败,并且不会检出任何内容。使用 -f 将忽略这些未合并的条目。可以使用 --ours--theirs 从 index 中检出合并的特定端的内容。使用-m,可以放弃对工作树文件所做的更改,以重新创建原始的冲突合并结果。

首先要弄清楚什么是工作树,什么是 index ?

Git的三种状态

现在注意 — 如果你想让剩下的学习过程顺利进行,这里是关于Git需要记住的主要事项。Git有三种主要状态,您的文件可以驻留在其中:modified, staged, 以及 committed

  • Modified 意味着您已经更改了文件,但尚未将其提交到数据库。
  • Staged 意味着您已经在当前版本中标记了修改后的文件,以便进入下一个 commit 快照。
  • Committed 意味着数据安全地存储在本地数据库中。

这就引出了Git项目的三个主要部分:工作树(working tree)、暂存区(staging area)和Git目录(Git directory)。

Figure 6. Working tree, staging area, and Git directory
git 将其它分支的文件检出到工作区
工作树是项目的一个版本的单个检出。这些文件从Git目录中的压缩数据库中提取出来,放在磁盘上供您使用或修改。

暂存区是一个文件,通常包含在Git目录中,用于存储有关下一次 commit 内容的信息。用Git的术语,它的技术名称是 index ,但短语 “staging area” 也同样有效。

Git目录是Git存储项目的元数据和对象数据库的地方。这是Git最重要的部分,也是从另一台计算机 clone 存储库时所复制的内容。

Git的基本工作流程如下:

  1. 您修改工作树中的文件。
  2. 您选择性地只暂存那些您希望成为下一次 commit 的一部分的更改,这只会将这些更改添加到暂存区域。
  3. 您执行一个 commit ,将文件保存在暂存区中,并将快照永久存储到Git目录中。

如果Git目录中有一个特定版本的文件,则认为该文件是 committed 。如果它已被修改并添加到暂存区域,则它就是 staged 。如果它在检出后发生了更改,但尚未暂存,那它是 modified 。在 Git Basics 中,您将了解更多关于这些状态的信息,以及如何利用它们或完全跳过 staged 的部分。


接下来步入正题,假如你有两个分支,分别为 masterdev ,您当前工作在 master 上,想将 dev 中 HEAD 处的 main.c 检出到工作区,按照如下命令操作:

首先需要知道 dev 分支 HEAD 处的 commit id ,比如是 a36ac44c5ac1d... ,执行如下命令:

git checkout a36ac44 -- main.c

注意,这一步执行完当前工作区与暂存区中的 main.c 都被改掉了,这可能不是您的本意,您可能只想改工作区,暂存区要保持不变,那么再执行下一步:

git reset -- main.c

这一步是将当前 master 分支 HEAD 所指向的 main.c 覆盖暂存区的 main.c ,这样暂存区的main.c 就与版本库里的一致了。文章来源地址https://www.toymoban.com/news/detail-408677.html

到了这里,关于git 将其它分支的文件检出到工作区的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Git——工作区管理

    如何管理工作目录,以便用户可以更高效地新建提交。如何在处理工作区和暂存区文件的过程中修复错误,以及如何修复最近一次提交记录中的问题;同时还会了解到如何安全地使用暂存机制和多个工作目录处理工作流中的中断问题。 主要内容有以下几点: 忽略文件:特意

    2024年02月03日
    浏览(37)
  • Git——三大分区【工作区 / 暂存区 / 版本区】

    前言 :Git作为一个版本管理工具,最核心组成思想是它的三个分区:工作区、暂存区和工作区。   Git的工作区也就是我们平时编辑代码的目录文件夹。   暂存区就是一个 暂时放置修改文件记录 的地方。以往仓库中放货物为例,向仓库中放货物总是一车车的拉,因为如

    2024年02月06日
    浏览(57)
  • git在工作区和本地库的操作命令

     本文介绍一些开发时,常用的在工作区和本地库之间的操作命令 工作树的修改内容要提交到本地库,首先需要先添加到缓存区stage,在commit到本地库。 你开发了一段时间,可能已经忘记了修改过那几个文件 可以使用 git status 查看 工作区和缓存区的内容 ,即修改过的文件和

    2024年02月15日
    浏览(38)
  • 【Git】第四篇:基本操作(理解工作区、暂存区、版本库)

    工作区 :就是我们创建的本地仓库所在的目录 暂存区 : stage或index,一般放在.git(可隐藏文件)目录下的index文件(.git/index)中,所以我们把暂存区有时候也叫做索引(index) 版本库 :工作区有一个隐藏目录 .git ,所说的版本库就是隐藏的.git目录。 下面的图详细展示了三者

    2024年02月04日
    浏览(47)
  • Git详解(带图) --- 本地电脑的工作区、暂存区、本地仓与远程仓

    在 git 的丰富功能中,工作区 (Work Space)、暂存区 (Index/Staging Area)、本地仓库 (Local Repository) 和远程仓库 (Remote Repository) 被认为是四大核心概念。今天让我们深入了解这些神秘的组成部分,揭开它们的面纱,让你能够更好地利用Git来管理项目。 上图相信大家再熟悉不过,这是我

    2024年01月18日
    浏览(38)
  • Git - 基于IDEA/命令回滚工作区和暂存区的修改

    1. 使用命令行回滚工作区的修改(回滚文件的修改) 可能有一天我正在写代码,写了很久发现写错了,想恢复到一开始的状态,一个笨办法就是把刚刚写的代码一行一行的删除,不过这种方式成本太高,我们可以通过命令来回滚 工作区的代码修改: 测试: ① Test.java文件内

    2023年04月08日
    浏览(49)
  • ChatGPT新功能曝光:可记住用户信息、上传文件和工作区

    🦉 AI新闻 🚀 ChatGPT新功能曝光:可记住用户信息、上传文件和工作区 摘要 :一张神秘截图曝光了ChatGPT新功能,包括可记住用户信息的\\\"My profile\\\"、上传和管理文件的\\\"My files\\\"以及可以让AI使用不同风格与用户互动的\\\"Workspace\\\"。爆料者指出相关代码正在加紧更新完善,离正式发布

    2024年02月11日
    浏览(37)
  • [VScode]-连接服务器无法解析工作区文件夹问题的解决

    目录 【问题状况】 【解决方法】 【补充】 1.如何添加新的host IP地址 2.配置完成后通过ssh访问服务器出现Bad owner or permissions on 2.1解决方法1 2.2解决方法2 在使用VScode通过Samba服务器的时候,发现无法正常的打开,文件夹显示感叹号。  同时右下角会弹出提示 首先需要在扩展里

    2024年02月03日
    浏览(48)
  • 【Linux】:初识git || centos下安装git || 创建本地仓库 || 配置本地仓库 || 认识工作区/暂存区(索引)以及版本库

    Git 原理与使用 课程⽬标 • 技术⽬标:掌握Git企业级应⽤,深刻理解Git操作过程与操作原理,理解⼯作区,暂存区,版本库的含义 • 技术⽬标:掌握Git版本管理,⾃由进⾏版本回退、撤销、修改等Git操作⽅式与背后操作原理 • 技术⽬标:掌握Git分⽀管理,从分⽀创建,切换,

    2024年02月05日
    浏览(54)
  • VS Code工作区用法

    背景 VS Code可以通过\\\"文件/打开文件夹\\\"来打开本地项目,但是想要打开多个项目便需要来回切换,比较费劲。此时就可以使用工作区功能,将不同的项目放置到同一个工作区中,这样切换项目的时候就会非常方便。 操作方法 打开其中一个项目 执行命令:文件 》 打开文件夹

    2024年01月25日
    浏览(52)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包