应用使用--all创建的git存储

时间:2015-08-19 10:01:24

标签: git git-stash

我意外地使用--all选项创建了一个git存储,根据文档,

  

如果使用--all选项,则除了未跟踪的文件外,还会隐藏和清除被忽略的文件。

现在,使用git stash pop恢复我的更改失败:

some/ignored/file already exists, no checkout
Could not restore untracked files from stash

(我实际应该做的是使用--include-untracked

git stash show -p仍列出我的更改,没有任何被忽略的文件。如果没有git尝试恢复被忽略的文件,我如何apply我的存储?

编辑:我刚创建了一个测试存储库并执行了git stash --all。已忽略的文件被存储并从文件系统中删除。我的问题是,在上面我的情况下,它们被隐藏了,但从文件系统中删除,所以这似乎是导致问题的原因。

2 个答案:

答案 0 :(得分:2)

您应该删除这些文件才能弹出存储。您可以手动执行此操作,也可以按照以下方法执行此操作:

git stash -all  # make a new stash           
git stash pop stash@{1}  # apply your original stash

如果你喜欢它,你可以放弃你已经完成的新藏品:

git stash drop

答案 1 :(得分:2)

使用日志查找存储的提交哈希

app.config(function($ionicConfigProvider, $translate) {

  $translate('label_back').then(function(translation){
     $ionicConfigProvider.backButton.text(translation);
  });

});

一切都很重要,因为它也显示了藏匿状态

它应该与此类似

$ git log --graph --all --decorate --oneline

现在,你想要查看藏匿处的顶部(这里,它是cd5e9ae)

*-.   cd5e9ae (refs/stash) WIP on master: cd48088 Fixed GET chats output
|\ \  
| | * e48d0d7 untracked files on master: cd48088 Fixed GET chats output
| * 1a3bf97 index on master: cd48088 Fixed GET chats output
|/  
* cd48088 (HEAD, origin/master, master) Fixed GET chats output

您将处于独立的HEAD状态 将其重置一步,保持更改

$ git checkout cd5e9ae

现在把它藏起来就像你想要的那样

$ git reset HEAD~1

现在你可以回到主人或你工作的任何地方并应用新的正确藏匿

$ git stash --include-untracked

this blog post启发

我刚测试了它,并且在我的项目中使用我忽略的文件,它也适用于你。