循环遍历 批量删除 除了main 分支之外的所有本地分支
- 【 windows 系统】
bash
git branch | Where-Object { $_ -notmatch "main" } | ForEach-Object { git branch -D $_.Trim() }
- 【Mac 或 Linux 系统】
bash
git branch | grep -v "main" | xargs git branch -D
Git Stash 在 Git 中,【内容临时存放】,并在需要时恢复的操作可以通过 Git Stash 实现。以下是具体指令:
-
临时存放当前修改内容:
bashgit stash
这会将工作目录和暂存区的修改保存到 stash 栈中,并恢复工作目录到最近一次提交的状态。
-
查看已存放的 stash 列表:
bashgit stash list
显示所有 stash 记录,格式如
stash@{0}
、stash@{1}
等。 -
恢复(弹出)上一次存放的内容:
bashgit stash pop
这会恢复最近一次的 stash(
stash@{0}
)并将其从 stash 栈中移除。 -
恢复特定 stash(不移除) : 如果想恢复某个特定的 stash(例如
stash@{1}
),可以使用:bashgit stash apply stash@{1}
区别在于
apply
不会从 stash 栈中删除该记录。 -
删除 stash: 如果想清除某个 stash,可以使用:
bashgit stash drop stash@{1}
或清除所有 stash:
bashgit stash clear
-
回退 git add 过的文件: 若回退刚 git add 过的文件,可以使用:
bashgit restore [文件路径或目录路径]
-
git 删除新创建的文件: 若新创建出来的文件,还没有通过git add过,那怎么删除呢:
bashgit clean -fd [文件路径/目录路径]
注意事项:
- 如果工作目录有未跟踪的文件(untracked files),需要用
git stash --include-untracked
或git stash -u
连同未跟踪文件一起存储。 - 使用
git stash
时,建议先确保没有未提交的更改冲突,以免恢复时出现问题。
总结:用 git stash
临时存放修改,用 git stash pop
恢复最近的 stash。