是否可以使用我的存储列表中的特定更改。例如,我的存储列表显示了2个条目stash@{0}
和stash@{1}
现在我想将{0}应用于某个X分支,将{1}应用于某个Y分支。我怎样才能做到这一点?我还可以从列表中删除特定的更改吗?
答案 0 :(得分:3)
要将特定存储应用于分支,请先切换到所需的分支:
git checkout branchA
然后使用以下命令之一应用所需的存储:
git stash apply stash@{n}
或
git stash pop stash@{n}
apply
命令会将您的藏匿处留在列表中,以便以后可以使用它,如果您不需要保留存储,则可以使用pop
命令。
在这里,您可以找到有关git stash
命令的完整文档:git-stash Documentation
答案 1 :(得分:0)
基本上你需要运行:
git stash branch branch-with-stashed-content # stash@{0} implied.
或者:
git stash branch branch-with-stashed-content stash@{1}
TL; DR
给定一个带有root-commit的Git存储库,你可以运行以下命令来尝试上面的那些:
git init test
cd test
git commit --allow-empty --no-edit --message='My empty root-commit.'
touch foobar
git add foobar
git stash
git stash branch branch-with-stashed-content
根据git help stash
,branch <branchname> [<stash>]
:
创建并签出一个名为
<branchname>
的新分支 最初创建<stash>
的提交适用于<stash>
中记录的更改到新工作树和索引。如果说 成功,<stash>
是stash@{<revision>}
形式的引用, 然后它会删除<stash>
。如果没有给出<stash>
,则应用 最新的一个。