Git checkout Git从另一个分支中的主分支提取

Git checkout Git从另一个分支中的主分支提取,git-checkout,master,git,Git Checkout,Master,Git,我从master创建了一个新分支,并更改了几个文件。如何从新创建的分支中的master中提取新文件,并忽略/覆盖当前分支中已更改的文件?您可以通过以下操作撤消本地更改,并恢复master分支中的文件: git签出主机--。 其中,--告诉Git将接下来出现的任何内容解释为路径列表,指示所有路径 如果正在使用或更高版本,则可以使用新的(但仍然是实验性的)命令: git还原主机--。 从: 引入了两个新命令“git switch”和“git restore”,将“签出分支以推进其历史记录”和“

我从
master
创建了一个新分支,并更改了几个文件。如何从新创建的分支中的
master
中提取新文件,并忽略/覆盖当前分支中已更改的文件?

您可以通过以下操作撤消本地更改,并恢复
master
分支中的文件:

git签出主机--。
其中,
--
告诉Git将接下来出现的任何内容解释为路径列表,
指示所有路径


如果正在使用或更高版本,则可以使用新的(但仍然是实验性的)命令:

git还原主机--。
从:

引入了两个新命令“git switch”和“git restore”,将“签出分支以推进其历史记录”和“签出索引中的路径和/或签出树以推进当前历史记录”从单个“git checkout”中分离出来

基本上,
git checkout
所做的两件事现在已经收到了专门的命令:

  • git开关
    以签出分支并相应地更新工作目录
  • git restore
    从工作目录中的特定提交(或索引)检出文件

    • 有很多方法可以做到这一点。下面显示了一些

      • 如果希望当前分支与本地
        master
        分支完全相同,则只需运行以下命令。这将删除您的所有更改

        $git重置--硬主控
        
      • 如果希望当前分支与远程
        master
        分支完全相同,只需运行以下命令即可。我们应该获取远程分支以确保它们都是同步的

        $git获取来源
        $git重置--硬原点/主原点
        
      • 另一种方法是删除当前分支,并从
        master
        创建一个同名的新分支。在执行此操作之前,如果您有一些未提交的数据,您应该将它们隐藏起来或进行提交

        • 要隐藏未提交的数据,请运行以下命令

          $git add。;吉特储藏;吉特储藏液
          
        • 要提交更改,请运行以下命令

          $git add。;git commit-m“只需提交&过一会儿就可以了”
          
        最后,通过运行以下命令删除并创建分支

        $git签出主机
        $git分行-D
        $git分行
        

      当您说“拉”时,是指从远程存储库中拉取更改(
      origin/master
      )或者只是恢复新分支中的文件以匹配本地
      主分支?@EnricoCampidoglio我想恢复新分支中的文件以匹配
      主分支为什么不在本地删除分支并创建一个同名的新分支。