为什么每个分支的git stash都不唯一?
时间:2020-03-06 14:19:45 来源:igfitidea点击:
我想它允许将更改从一个分支移动到下一个分支,但这就是摘樱桃的目的,如果我们不提交所做的更改,也许我们不应该将其移动?
有时我在错误的分支上应用了错误的存储,这使我对这个问题感到疑惑。
解决方案
如果我们想要从分支运行的"存储",请执行类似的操作以将更改存储在当前分支的新分支上。
git checkout -b new_stash git commit -a -m "stashed changes"
撤回藏匿处
git reset HEAD^ git branch -d new_stash
git stash尤其有用,因为我们可以将更改拉入肮脏的树中,即,如果我们有出色的编辑并想要执行
git pull
并且不能,可以存储所做的更改,拉出然后应用存储
git stash git pull git stash apply git stash clear
希望这对我们有所帮助!
如前所述,如果我们希望按分支进行存储,则确实需要从现有分支派生新分支。
此外,除了已经提到的存储可以允许我们进入要处理的分支的事实之外,还可以让我们在提交所有内容之前切换分支。这对通常情况下的樱桃挑选不如对工作副本进行樱桃挑选有用。
例如,在功能分支上工作时,我经常会注意到与该分支相关的代码中的小错误或者表面上的杂质。好吧,我马上修复这些。当需要提交时,我有选择地提交了相关的更改,但没有提交修订和修饰。相反,我将它们存储起来,这使我可以切换到稳定的次要修复程序分支,然后可以在其中应用该存储项并分别提交每个次要修复程序。 (根据有问题的更改,我还将再次存储其中的一些内容,以切换到其他功能分支,并在其中应用这些功能。)
这使我在工作时可以进入编程模式,而不必担心代码的适当图书馆管理。然后,当我精神休息时,我可以回去仔细地将我的零钱整理到所有合适的架子上。
如果存储不是全局的,则这种类型的工作流程将更加困难。
git-stash对我来说最有用的是将尚未签入的更改移到与当前签出的分支不同的分支。
例如,我经常发现自己在bug修复分支上进行了简单的更改。只是发现我正在做的更改比我最初猜测的要复杂。 Git-stash是将那组更改移到另一个分支的最简单方法。