迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 > Git >

将现有未提交的更改移动到 Git 中的新分支

作者:迹忆客 最近更新:2023/04/04 浏览次数:

本文讨论将未提交的更改移动到新分支的过程。

您可能正在处理您的 master 分支,并意识到您必须创建一个新分支并移动未提交的更改。 如果您处于类似情况,请留下来。


将现有未提交的更改移动到新分支

以这个假设场景为例:您正在 master 分支上工作,并意识到您的代码需要测试才能提交给 master

您必须创建一个新分支,移动未提交的更改并重置您的主分支。 你怎么看这个?

有两种方法可以做到这一点。

  1. 使用 git checkout 命令或 git switch 命令。
  2. 使用 git stash 命令。

git checkout 和 git switch 命令

如果您已经使用 Git 多年,您可能知道 git checkout 命令有多种用途。 你知道我们可以使用 git checkout 命令来创建和切换到一个新的分支。

假设我们在 master 分支上,我们的工作空间如下所示:

$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to ...)
  (use "git checkout -- <file>..." to ...)
        modified:   LICENSE.md
        modified:   README.md
Untracked files:
  (use "git add <file>..." to include...)
        scripts.txt
no changes added to commit (use..)

我们如何将这些更改移动到新分支?

要将更改移动到新分支,例如,新开发分支,我们将运行:

$ git checkout -b development

或者,我们可以使用 git switch 命令,如下所示。

$ git switch -c development

这两个命令都将创建一个开发分支并将我们未提交的更改移动到新分支。 下面是我们在开发分支上的工作目录。

开发分支工作空间

然后我们可以将文件添加到索引并提交。

如果我们切换回 master 分支并运行 git status 命令,我们将看到我们的工作树是干净的。

$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
the git stash Command

我们可以使用 git stash 命令将更改移动到新分支。 这会将未提交的更改存储在补丁文件中。

$ git stash

然后您可以创建一个新分支,您将在其中存储未提交的更改。 使用 git checkout 命令创建并切换到新分支,如下图。

$ git checkout -b <new branch>

弹出存储以在新创建的分支的工作空间中应用未提交的更改。 使用 git stash popgit stash apply 命令。

$ git stash pop

您可能会遇到合并冲突,您必须根据自己的喜好手动解决这些冲突。 如果您对更改感到满意,请继续提交。

简而言之,要将未提交的更改从一个分支移动到另一个分支,您有两种选择。 您可以使用 git stash 命令或常规的 git switchgit checkout 命令。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 Windows 系统中卸载 git

发布时间:2023/04/09 浏览次数:223 分类:Git

在这篇简短的文章中,我们将学习如何卸载 Git,以及如何在从个人计算机的目录中卸载 Git 后删除这些文件。

如何检查 Git 的版本

发布时间:2023/04/09 浏览次数:160 分类:Git

在这篇检查Git最新版本的文章中,我们将学习如何在本地个人计算机或任何服务器上检查Git版本。

Git 如何重命名本地分支

发布时间:2023/04/09 浏览次数:64 分类:Git

大多数情况下,重命名分支机构是由于上述情况。 因此,在本教程中,我们将学习使用下面提到的技术更改本地 Git 分支的名称。

重命名 Git 存储库中的文件和目录

发布时间:2023/04/09 浏览次数:102 分类:Git

在本文中,我们将讨论 git 中的重命名过程。 我们使用 Git Rename 来更改工作目录中文件和文件夹的名称。

在 Git 中取消初始化存储库

发布时间:2023/04/09 浏览次数:187 分类:Git

本本文介绍如何通过 Git 命令行取消初始化 Git 存储库。git init 命令开发一个新的空置 Git 存储库。 它还用于重新初始化已经存在的 Git 存储库。

Git 仓库名称该如何命名

发布时间:2023/04/09 浏览次数:208 分类:Git

使用 Git 时,选择一个简洁且最新的存储库名称是一项艰巨的任务。本教程介绍了如何以独特的方式命名 Git 存储库。

配置 Git 以忽略文件模式更改

发布时间:2023/04/09 浏览次数:67 分类:Git

本文讨论配置 Git 以忽略文件更改 chmod 所需的步骤。 如果您更改 Git 正在跟踪的文件的权限,系统将在该文件中注册更改。

在 Git 中暂存已删除的文件

发布时间:2023/04/09 浏览次数:93 分类:Git

本文讨论了在 Git 中暂存已删除文件的必要步骤。我们知道 rm 命令可以删除一个文件,而无需将其从工作目录中移除。 那么,我们如何暂存已删除的文件以进行提交呢?

在 Git 中显示冲突文件

发布时间:2023/04/09 浏览次数:139 分类:Git

本文讨论在 Git 中列出冲突文件的最简单和最干净的方法。 我们可以使用 git status 命令,但这很麻烦,尤其是当我们有大量不冲突的文件时。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便