git stash 部分文件

git stash 部分文件开发过程中经常会需要 stash 贮藏 部分文件的场景 无奈 sourcetree 并不支持这种操作 gitkranken 神器是可以的 但是现在收费了 所以只能自己动手命令行搞起来了 参考了一下官方文档 gitstash 命令有如下用法 gitstashlist options gitstashshow stash gitstashdrop q quiet stash gitstash pop apply i stash stash options

开发过程中经常会需要stash(贮藏)部分文件的场景,无奈sourcetree并不支持这种操作, gitkraken神器是可以的,但是现在收费了。所以只能自己动手命令行搞起来了。

git stash list [<options>] git stash show [<stash>] git stash drop [-q|--quiet] [<stash>] git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>] git stash branch <branchname> [<stash>] git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet] [-u|--include-untracked] [-a|--all] [-m|--message <message>] [--] [<pathspec>…​]] git stash clear git stash create [<message>] git stash store [-m|--message <message>] [-q|--quiet] <commit> 

可以看到我们最常用的

git stash 

其实是

git stash push 

的缩写。不过要使用这些参数的话就不能缩写了,比如你想指定一个stash的说明,你可能会这样:

git stash -m "this is a test" 

但是这样是不行的,你必须要:

git stash push -m "this is a test" 

可以看到push这个命令有最复杂的参数,简单说明下:

  • -p|–patch
    交互式stash,每个修改逐个确认,之后不停按y/n来选择要stash的修改

  • -k|–[no-]keep-index
    已经git add的文件stash之后修改还保留

  • -q|–quiet
  • -u|–include-untracked
    新创建的文件直接git stash是不会被stash的,加上这个就可以

  • -a|–all
    比上一个-u更强,连被git ignore的文件都可以stash

  • -m|–message


    指定一些说明性文字



  • [–] [ …​]

    指定stash的文件,但是如果其他文件有被git add过,也会被同时stash。不过只有指定的文件的修改会从工作副本中clean掉。


那么stash部分文件就有两种方式

  1. 使用-p进行交互式操作(适合需要具体到修改的时候,例如某个文件中部分需要stash部分不需要)
  2. 通过在命令后面直接指定文件(一般情况肯定这个方便)
# 指定说明信息并stash所有java文件的修改 $ git stash push -m "this is a partly stash test" /*.java 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/229221.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午5:11
下一篇 2026年3月16日 下午5:12


相关推荐

  • iOS 签名机制与证书

    iOS 签名机制与证书iOS 签名机制与证书 声明 纯粹就是总结,很多地方跟参考资料一样,就是自己手动打一遍,自己亲自画个图增加理解和加强记忆力,而不只是复制粘贴 iOS 打包流程也不在此叙述,相信很多人已经对照过各种图文

    2022年5月23日
    47
  • 高中数学必修2:平面解析几何之直线与圆、圆与圆的位置关系

    高中数学必修2:平面解析几何之直线与圆、圆与圆的位置关系今天分享关于高中数学必修 2 平面解析几何中的直线与圆 圆与圆的位置关系知识点 分别从三个方面讲解 用 5 个经典习题进行解答全过程 1 直线与圆的位置关系 2 圆与圆的位置关系 2 求圆的弦长的常用方法 1 直线与圆的位置关系已知点 M a b 在圆 O x2 y2 1 外 则直线 ax by 1 与圆 O 的位置关系是 A 相切 B 相交 C 相离 D 不确定 2 若

    2026年3月17日
    2
  • es6 模板字符串_json字符串转成标准格式输出

    es6 模板字符串_json字符串转成标准格式输出模板字符串使用的是返引号,就是键盘左上角esc下面那个键,使用模板字符串可以更方便于传参例如:当我们需要在url后面跟一个参数的时候以前我们可以这样写varpath=path+’:’+id.toString()&lt;ahref={path}&gt;现在我们可以这样写&lt;ahref=`path/:${id}`&gt;上面的path是一个路由…

    2022年8月21日
    10
  • python变量命名规则与规范(约定)

    python变量命名规则与规范(约定)引子前些日子 大大的一位友友问了我一个问题 表示了对命名规范的不解 确实如此关于命名规范有一套相对严谨而复杂的理论 大大在此特就 python 的变量 以及函数和对象 命名规则与规范进行讲述 规则规则很简单 我在此也就写在前面 并且一笔带过 相信在看的朋友也不会有疑问 python 变量必须由数字 字母 下划线 0 9a zA Z 组成 严格区分大小写 规范性质与意义在此为了分清规则与规范的区别 特别需要指出规则的性质 规则简洁明了 命名正确与否由编译器检查 也就是说 如果命名不符合

    2026年3月17日
    2
  • 【Leetcode】Pascal&#39;s Triangle II

    【Leetcode】Pascal&#39;s Triangle II

    2022年1月1日
    53
  • 实操:英伟达免费模型接入 Claude Code 教程

    实操:英伟达免费模型接入 Claude Code 教程

    2026年3月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号