在 git 中交换暂存和未暂存更改的最短方法是什么?

2023-12-28

如果有一些更改添加到索引中,而有一些更改未添加到索引中,我如何交换这两组更改?


它认为这对于临时提交来说是最容易做到的。当您有暂存和未暂存的提交时,在尝试对更改重新排序时可能会发生冲突。

对分阶段的更改进行提交,创建一个分支供以后使用:

git commit -m "Saved staged"
git branch save-staged

提交未暂存的更改(如果未暂存的更改包含新文件,您可能需要显式git add首先是他们):

git commit -a -m "Unstaged changes"

将未暂存的更改重新设置到原始 HEAD 上(可能涉及冲突解决):

git rebase --onto HEAD^^ HEAD^

将分阶段的更改重新设置为未分阶段的更改(可能涉及冲突解决):

git reset --hard save-staged
git rebase --onto HEAD@{1} HEAD^

最后,将索引重置为(最初)未暂存的更改:

git reset HEAD^

并将分支指针移回到原来的HEAD:

git reset --soft HEAD^

删除临时分支:

git branch -D save-staged
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 git 中交换暂存和未暂存更改的最短方法是什么? 的相关文章

  • 如何使用 API 和 C# 将文件从 azure DevOps 服务器下载到指定路径

    我正在尝试使用 API 从 azure Devops 服务器下载文件 API 给出了成功响应 但是没有下载任何文件 如果我们删除格式参数 我们将获得带有文件链接的响应 单击该文件不会下载 示例代码 var personalaccesstok
  • 如何在 Visual Studio 2013 中隐藏未提交的更改

    需要一些帮助 了解如何使用 Visual Studio 2013 搁置 Git 存储库中未提交的更改 我来自 PHPStorm 您可以在一个分支上搁置未提交的更改 切换到另一个分支并取消搁置 但是 我无法找到 了解如何在 Visual St
  • git-svn SVN 作者文件的相对路径?

    我已经使用 git svn 从工作中克隆了一个 SVN 存储库 在最初的克隆过程中 我提供了一个 SVN 作者文件 当我进行初始克隆时 git 设置了authorsfile作为绝对路径 但是 我在工作机器和笔记本电脑上保留了这个 git 存
  • `git add --patch` 和 `--word-diff`

    git add patch提供了一个很好的界面 用于检查未暂存的更改 然后仅暂存下一次提交中需要的更改 很好 除了一件事 没有明显的方法来选择哪个diff视图来使用 特别是 我希望能够配置git add patch以同样的方式向我呈现差异g
  • 致命:早期 EOF 致命:索引包失败

    我用谷歌搜索并找到了很多解决方案 但没有一个适合我 我试图通过连接到 LAN 网络中的远程服务器来从一台计算机进行克隆 从另一台机器运行此命令会导致错误 但是在服务器上使用 git 192 168 8 5 运行相同的克隆命令 一切正常并且成
  • 签出现有的远程分支

    我见过不同的方法来检查现有的远程分支 假设我的朋友推送了新分支 bigbug 并且我想签出并将我的本地工作副本切换到该分支 我有以下选项 1 git checkout b bigbug origin bigbug 2 git checkou
  • 我可以从命令行向 github 添加问题吗?

    我是 git 新手 我希望能够通过 github 绘制我的项目的计划和进度 问题是 这需要在 github com 上使用浏览器进行大量点击 并且我希望能够通过使用命令行程序来自动执行该任务 github 有命令行界面吗 有一个ghi ge
  • 无法将 android“gen”文件夹提交到 Git

    我在 eclipse 中使用 EGit 为我正在开发的 Android 项目提供 Git 支持 问题是 将我的项目提交到本地存储库后 我意识到 gen 文件夹没有被提交 因此 当我从 Git 存储库获取最新源代码后尝试在另一台计算机上打开该
  • 在 Windows 上将 Mercurial (hg) 存储库转换为 Git (7)

    我现在真的很沮丧 我有一个现有的 hg 存储库 其中有几个月的编码历史 我想将其放入私有 Github 存储库中 以便我可以从那里对其进行处理 不幸的是我使用的是 Windows 我似乎找不到any转换我实际上可以正常工作的存储库的方法 实
  • 来自 eclipse 的部分 git 提交 (egit)

    假设我有一个有 2 个更改的文件 如何使用 egit 只提交其中之一 命令行版本可以在以下位置找到this https stackoverflow com questions 1085162 commit only part of a fi
  • 有关多个远程存储库的 Git 状态

    我有一个脚本 如果我忘记在 40 多个存储库中提交或推送一些代码 它会通过电子邮件向我发送提醒 在我的两个项目中 我遵循了这些帖子中的答案 其中我设置了 git push 来推送到多个存储库 从多个远程位置拉 推 https stackov
  • 如何让 git 和 copSSH 在正确的目录中查找密钥?

    我刚刚安装了 Windows 版 copSSH 当我启动它时 我得到一个目录C copSSH home Nick ssh其中有我的酒吧和私钥 当我通过 Cygwin bash 窗口访问此目录时 使用 ssh 用户 主机 我很高兴地登录了 但
  • 由于不存在大文件而导致 git Push 错误

    当尝试推送到 git 时 我不断得到相同的结果 Counting objects 78 done Delta compression using up to 4 threads Compressing objects 100 67 67 d
  • 使用 TortoiseGit 创建 git 克隆时出现 SSL 证书问题

    我想在 TortoiseGit 的帮助下克隆 git 存储库 但出现错误 错误 SSL 证书有问题 请验证 CA 证书是否正常 细节 错误 14090086 SSL 例程 SSL3 GET SERVER CERTIFICATE 访问时证书验
  • RuntimeError:模型类 django_messages.models.Message 未声明显式 app_label 并且不在 INSTALLED_APPS 中的应用程序中

    我正在尝试使用https github com arneb django messages https github com arneb django messages打包我的消息传递内容并尝试了以下操作 pip install git h
  • 返回到存储库中的特定修订后提交并推送更改?

    我们需要及时返回到某个特定的提交 一些意外的改变是为了掌握 尝试恢复它挖得太深 所以 master 的状态很糟糕 现在我们希望master回到66ada4cc61d62afc 根据git 恢复到某个提交 https stackoverflo
  • 如何在Windows上分离“Git bash”中启动的“git gui”?

    例如 我开始 git bash 我导航到某个目录 I start git gui 我关闭控制台窗口或按 Ctrl C Git gui 的窗口消失了 即使我用过git gui disown 即使当我按 Ctrl C 时它不在前台 如何正确分离
  • 从 github 中删除子项目提交

    我有两个存储库A and B 我错误地在我的机器上将仓库 B 克隆到了 A 内 我从存储库 B 中删除了所有代码 但是当我在源上从 A 推送并合并代码时 它还显示了子项目提交B在 Github 仓库上 我想从我的 master 上删除子项目
  • Git:压缩 master 上提交的最简单方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 git 将最后 X 次提交压缩在一起 https stackoverflow com questions 5189560 how can i squash my last x commits
  • 致命:无法将 HEAD 解析为有效引用

    我正进入 状态fatal Failed to resolve HEAD as a valid ref 每当我尝试承诺时 我努力了 echo ref refs heads master gt git HEAD 但它不起作用 也尝试过 git

随机推荐

  • 如何在 Google Cloud Functions 上运行 C++ 文件?

    据我所知 Google Cloud Functions 只允许您部署 NodeJs 或 Python 脚本 问题 我怎样才能部署一个简单的Hello World cpp谷歌云功能 例如 编写一个 hello world HTTP 函数 有哪
  • 如何按时间而不是按大小对 shell 脚本输入进行分块?

    在 bash 脚本中 我使用多生产者单消费者模式 生产者是将行写入 fifo 的后台进程 通过 GNU Parallel 消费者从 fifo 读取所有行 然后排序 过滤并将格式化结果打印到 stdout 然而 可能需要很长时间才能获得完整的
  • cURL:通过代理进行 https

    我需要向 https URL 发出 cURL 请求 但我还必须通过代理 这样做有什么问题吗 我在使用curl和php执行此操作时遇到了很多麻烦 因此我尝试在Python中使用urllib2执行此操作 结果发现urllib2在通过代理时无法P
  • AVAssetReader,如何使用流而不是文件?

    AVAssetReader 非常棒 但我只能看到如何将它与本地资产 文件或我猜的组合一起使用 So assetReader try AVAssetReader asset self asset assetReader addOutput r
  • Spring-boot jersey maven 无法运行 war 文件

    我们正在创建一个 spring boot jersey 应用程序 现在我们要创建可执行的 war 文件 问题是当我运行它时应用程序运行良好 mvn spring boot run 但是当我尝试将其打包为 war 并使用 java jar A
  • 如何在文档中找到 to_string 可用于 &str?

    我试图了解发生了什么事读一行 https stackoverflow com questions 27972686 read only one line to string in one line of code 但我找不到有一个方法to
  • WPF - 即时修改图像颜色 (C#)

    是否可以通过代码 甚至使用模板 修改 WPF 中图像的颜色 假设我有一个图像需要应用于图块 默认情况下它具有白色前景色和透明背景 类似于下面的 PNG 它就在这里 我不想添加不同的图像 具有不同的颜色 而是想操纵白色 并将其更改为黑色 如果
  • 如何编写仅查看日期时间字段的时间部分的 activerecord 查询?

    是否可以执行仅查看日期时间字段的时间部分的 activerecord 查询 e g Battle where start time lt and start time gt 12 00 06 00 查找早上 6 点到中午 12 点之间开始的
  • c 预处理器:串联算术

    如何让预处理器进行串联算术运算 我尝试过 define DECL FUNCT3 ch1 ch2 void funct ch1 and ch2 void define DECL FUNCT2 ch1 ch2 DECL FUNCT3 ch1 c
  • 查找过去 30 分钟内未访问/修改的文件?

    我有一个要求 我想向尚未访问过文件的用户发出通知30 min 使用 shell 脚本 是否可以找到未访问过的文件30 min使用查找 我查过 find opt SP tibmft scripts mtime 0 这将获取过去 24 小时内修
  • Guid.NewGuid() 的 C++ 版本是什么?

    我需要创建一个GUID在非托管 Windows C 项目中 我习惯了 C 我会用Guid NewGuid 非托管 Windows C 版本是什么 I think CoCreateGuid http msdn microsoft com en
  • Android WebView:在Android客户端上传图像。无法在服务器端 JavaScript 中获取文件类型

    我已经测试了 stackOverFlow 上的所有可用代码 但仍然无法正常工作 我使用Android 4 4 4并使用WebView将图像上传到服务器网页 但无法在服务器JavaScript代码中获取文件类型 alert type inpu
  • 如何将字符串转换为布尔值

    我有一个string可以是 0 或 1 并且保证不会是其他任何东西 所以问题是 将其转换为最佳 最简单和最优雅的方法是什么 bool 确实很简单 bool b str 1
  • 使用 HTTP 上传文件。收到错误:- HttpSendReuest 12005

    我想使用 HTTP 将 D er txt 上传到网络服务器 当我运行程序时 我收到 HttpSendRequest 12005 错误 我在我的网络服务器上使用了一个 PHP 脚本 它将接受该文件并将其存储在名为 upload 的预制目录中
  • 持久“记住我”Cookie 的竞争条件

    根据持久登录 Cookie 最佳实践 http fishbowl pastiche org 2004 01 19 persistent login cookie best practice 您不应该允许多次使用 记住我 令牌 持久性 coo
  • 由于未知表而无法删除表(错误 1051)

    我正在尝试从我继承的架构中删除一个表 当我SHOW TABLES I get Tables in schema a table 1 table 2 table 3 table 4 table 5 table 6 但是当我执行时
  • 领域 + NSTableView + NSArrayController

    我的 macOS 应用程序有一些问题 希望您能帮助我 我对 macOS 还很陌生 所以请多多关照 应用程序的一部分由一个简单的 NSTableView 组成 其内容绑定到 NSArrayController NSArrayControlle
  • Apache poi:删除 XWPFDocument 中的图片

    我正在编写一个应用程序 它采用带有一堆空段落和表格的 docx 文件 并使用 Apache POI 和数据库中的数据以编程方式填充它们 我提供的 docx 模型中还包含一系列图片 我的问题是我想删除不需要的图片 再次以编程方式 我看到有一种
  • TextMate 语法——规则的优先级

    我正在尝试修改 CSharp 语言的语法突出显示 因此我将在 C 字符串中获得 SQL 的语法突出显示 TextMate 支持嵌入语言 因此这似乎是可能的 我建立在csharp tmLanguage json https github co
  • 在 git 中交换暂存和未暂存更改的最短方法是什么?

    如果有一些更改添加到索引中 而有一些更改未添加到索引中 我如何交换这两组更改 它认为这对于临时提交来说是最容易做到的 当您有暂存和未暂存的提交时 在尝试对更改重新排序时可能会发生冲突 对分阶段的更改进行提交 创建一个分支供以后使用 git