10

我经常遇到糟糕的情况,因为我签出了一个包含未提交更改的分支,我应该在更改分支之前提交这些更改但忘记了。git checkout如果有任何待处理的更改或新文件,有没有办法使用一些 git config 我可以失败?我最近养成了git status以前跑步的习惯git checkout,但这样做很不方便,而且还容易健忘。我可能可以使用 Bash 别名以某种方式将这两个命令链接在一起,但我希望有一些我可以扔进我的东西或者我在的手册页.gitconfig中没有看到的标志。git config

4

2 回答 2

7

git checkout如果结帐会导致任何更改在其过程中丢失,则不会运行。因此,即使您使用git checkout脏工作目录,您的所有更改也会转移到另一个分支。而且您也可以切换回上一个分支以进入旧状态。

如果分支不兼容(例如您修改的文件被删除),git checkout应该自动失败,防止您丢失任何更改。

于 2013-09-20T14:42:09.717 回答
0

您可以使用

混帐藏匿

将未提交的更改保存在堆栈上。

git stash list (查看您存储了哪些存储)

git stash apply(应用存储在 stash 中的更改)您甚至可以从 stash 创建分支。有关更多信息,请参阅 gitscm 书 ( http://git-scm.com/book )

于 2013-09-20T14:37:55.910 回答