我在master
分行。
git checout -b new-branch
mkdir new-branch-stuff
cd new-branch-stuff
echo "new stuff here" >> stuff.txt
git add stuff.txt
然后在这一点上,我决定我必须做其他事情(因为我的老板让我在紧急事情上工作)。所以我要切换回master
分支
checkout master
git status
我可以看到这个,这是我的新分支,我应该从
切换% git checkout master A ..new-branch-stuff/stuff.txt
我期望不会看到我的旧分支专用文件。因为我想要在主隔离的环境中保存知道我即将在当前分支上进行更改。
问: git建议采取什么方式?
(我是git中的一种新东西..还是。试图让我的头脑正确地与分支机构合作)
答案 0 :(得分:2)
您尚未完成git commit
。
git checkout -b
创建了新分支并将其置于其上。但就是这样。
每次执行git add
时,您都会进行更改以进入下一次提交。 (您尚未进行git add
编辑的更改尚未暂存。)但无论如何,您尚未提交。
然后,你说git checkout master
。 Git确保从分支new-branch
切换到master
不会丢失任何内容(在这种情况下不会丢失),因此它会从分支new-branch
切换回master
。
您上演的更改git add stuff.txt
仍在进行下一次提交。你还没有提交,所以它会带你进入分支master
。
如果您希望将其保存在新分支上,请先切换回来,然后提交:
git checkout new-branch
返回new-branch
git status
和/或git diff --cached
查看您将提交的内容git diff
查看不会提交的内容git commit
提交它,在你当时的任何分支上。