如何一次性保存我的所有Git stashes差异?

Fil*_*ire 2 git git-stash

假设我在本地存储库中有多个存储区.打电话时git stash list我得到一个清单:

stash@{0}: work done on branch master
stash@{1}: work done on branch a001
stash@{2}: work done on branch a123
stash@{3}: work done on branch a233
stash@{4}: work done on branch a444
...
Run Code Online (Sandbox Code Playgroud)

我怎样才能将每个存储的每个差异保存到单独的文件中?

小智 8

这应该做的伎俩:

git stash list | sed 's/\//\_/g'|sed 's/ /\_/g' | awk -F ":" '{ system("git stash show -p " $1 " >> " $1$2$3 ".diff" ) }'
Run Code Online (Sandbox Code Playgroud)

它将创建以下文件:

stash@{0}_work_done_on_branch_master.diff
stash@{1}_work_done_on_branch_a001.diff
stash@{2}_work_done_on_branch_a123.diff
stash@{3}_work_done_on_branch_a233.diff
stash@{4}_work_done_on_branch_a444.diff
Run Code Online (Sandbox Code Playgroud)