**[git newbie]**假设我正在处理一个新文件,我写了一个故事:
Version1: A guy walks into a bar
[here I tell my story]
在这一点上,我喜欢我写的东西,但我希望做一些修改,所以我把我的修改:
$git stash save -u 'version1: a guy walks'
留言:
Saved working directory and index state On dev_story: version1: a guy walks
现在我改变它:
Version2: A nice dude walks into a bar
[here I tell a slighly different story]
然后再藏起来
$git stash save -u 'version2: a dude walks'
留言:
Saved working directory and index state On dev_story: version2: a dude walks
查看我的藏匿清单我看到:
$ git stash list
stash@{0}: On dev_story: version2: a dude walks
stash@{1}: On dev_story: version1: a guy walks
我想把我的作品展示给一个朋友,并讨论版本1和版本2。
当我尝试应用stash@{0}时,它没有显示“一个人走...”我尝试过的内容:
$ git stash show stash@{0} //new line no error
$ git stash apply stash@{0}
test/story.txt already exists, no checkout
error: could not restore untracked files from stash
1条答案
按热度按时间bkhjykvo1#
$ git stash show stash@{0} //新行没有错误
Git在这里什么也没有显示,因为你的文件没有被跟踪。
git stash show
不会显示你没有被跟踪的文件,除非你用-u
请求。第一个
你已经有一个修改过的test/story.txt文件了,因为你隐藏的修改 * 会创建一个新文件 *,git会保护你不被它覆盖。
请参阅Stashing and Cleaning了解有关隐藏的更多信息。
总的来说,我发现隐藏很容易变得混乱,忘记里面有什么或者它适用于什么。暂时隐藏更改是有用的。如果要隐藏更长的更改,我建议使用提交和分支。
如果你需要保存一些未完成的工作,提交并记录为“wip”(工作进行中)。然后amend the commit later (see Changing the Last Commit。如果你想有两个不同的版本,创建一个分支;这是他们的专长,树枝很便宜