Git - stash to branch - 存储中的文件被重新应用于master

时间:2014-06-20 03:52:48

标签: git github git-branch git-stash

我是git的新手我已经观看了几个小时的视频,虽然看起来合情合理,但我总是失败并总是陷入困境。

我试图隐藏我当前未提交和未经修改的更改并且“解除”'根据{{​​3}}将它们分成一个分支。我这样做:

git add .
git stash
git stash branch my_new_branch

它切换到分支,并且存在未安装的文件 - 但它们也在主分支中被释放。这是对的吗?

在卸载之前,如果我执行git status

,则主分支是干净的

编辑: 谢谢@VonC ...这就是我想要实现的目标,而且我已经意识到我现在还没有走得太远

我创建一个空的repo并添加了file1和file2并提交了它们。

然后我添加了file3和file4并将它们藏起来,然后将它们释放到branch3and4

然后它们在master和branch3and4中都可见

我检查了branch3and4并提交了文件

然后当我回到掌握时,文件已经消失了 - 这正是我想要的,所以现在我可以在两个分支之间切换,并在我' ls'

1 个答案:

答案 0 :(得分:1)

  

但是他们也在主分支中被释放了。这是对的吗?

不完全是:只要这些文件与master分支中的版本不同,切换回master仍会保留那些未跟踪的文件。

添加到索引的文件不应再在master中(您应该在my_new_branch之前将它们提交到git checkout master,否则这些修改将会丢失(或者至少更难恢复)