【Git 命令】你正确运用了git stash吗?【总结】
不好意思,我之前没有使用过……
所以,让我们正确地使用git stash吧。
将分支的更改先暂时存放在stash中。
git stash在工作中非常方便。
当想要从当前分支查看另一个分支时,它可以临时保存当前分支的更改内容。我经常使用它。
在这种情况下,突然之间,我从我的工作分支中创建了一个新文件,在我的另一个分支中,然后回到了最初的分支并提交了更改,结果发现我在另一个分支上的工作内容也被提交进去了。
情况大致如下。
master---branch1(自分のタスク1)
|
|--branch2(自分のタスク2)
换句话说,就是branch2上所做的内容也被同步到了branch1,并作为提交内容一并包含在了其中。
原因是,总的来说,git stash 无法避免对新文件创建的更改。
如果你真的想避免创建新文件,好像可以使用-u选项。
$ git stash -u
git stash命令的总结
从这里开始,会总结使用方法。
让我们将步骤融入并正确使用!
当你想要离开当前工作分支并切换到另一个分支时。
-
- 暫時避開在當前分支中的修改,切換到另一個分支
-
- 完成切換後進行相關任務,再返回避開修改的分支
- 將先前避開的修改點重新恢復
将当前工作分支中的更改暂时避开,使其能够切换到另一个分支。
# 変更を避けておく
$ git stash
# 新規ファイルも退避対象に含める
$ git stash -u
撤回之前避开的更改点
# 直近のスタッシュをカレントブランチに適用する + スタッシュを残す
$ git stash apply
# 直近のスタッシュをカレントブランチに適用する + スタッシュを削除する
$ git stash pop
想要恢复特定的已删除的文件夹。
-
- 显示存储列表。
- 选择存储编号,并应用。
显示存储列表
# スタッシュリストを表示
$ git stash list
# スタッシュ番号: WIP on work/ブランチ名: 親コミットID コミットメッセージ
stash@{0}: WIP on work/Signup: 789ijkl third commit
stash@{1}: WIP on work/Login: 456efgh second commit
stash@{2}: WIP on work/add-rubocop: 123abcd first commit
指定特定的蓄积编号,并应用它。
# 直近のスタッシュをカレントブランチに適用する + スタッシュを残す
$ git stash apply stash@{0}
$ git stash apply
# スタッシュ番号1を指定して、カレンとブランチに適用 + スタッシュを残す
$ git stash apply stash@{1}
# スタッシュ番号2を指定して、カレンとブランチに適用 + スタッシュを削除する
$ git stash pop stash@{2}
我想要删除收藏夹。
# 直近のスタッシュを削除
$ git stash drop stash@{0}
$ git stash drop
# スタッシュ番号1を指定して削除
$ git stash drop stash@{1}
# すべて削除
$ git stash clear