如何将旧笔记本中的完整Git stash列表导出至新笔记本?
导出并迁移Git Stash列表到新电脑(Git 2.32.0)
旧电脑操作:导出所有Stash为补丁文件
- 打开终端进入目标Git仓库目录,先确认现有stash条目:
git stash list - 一次性导出所有stash为独立补丁文件(每个stash对应一个
.patch文件):
执行后会生成for i in $(git stash list | cut -d: -f1); do git stash show -p $i > "${i//@/-}.patch"; donestash-0.patch、stash-1.patch这类文件,文件名对应原stash的序号。 - 将这些
.patch文件复制到新电脑(可用U盘、云存储等方式传输)。
新电脑操作:导入Stash补丁
方法1:应用补丁后保存为新stash
- 进入新电脑上的同一Git仓库目录,把传输来的
.patch文件放在仓库根目录。 - 逐个处理补丁文件:
重复上述命令处理所有补丁文件即可。# 先将补丁应用到工作区 git apply stash-0.patch # 将当前修改保存为新的stash,替换描述为原stash的说明 git stash push -m "原stash@{0}: 修复XX问题"
方法2:直接导入为stash条目(无需先应用到工作区)
- 进入目标仓库目录,对每个补丁文件执行:
完成后用# 计算补丁文件的哈希值 HASH=$(git hash-object -w stash-0.patch) # 将哈希值存储为新的stash条目,替换描述为原stash的说明 git stash store -m "原stash@{0}: 优化XX功能" $HASHgit stash list就能看到导入的stash条目。
内容的提问来源于stack exchange,提问作者DrunkDragon
相关产品推荐
相关产品推荐

