git交换机可以不经过修改就进行分支吗

git交换机可以不经过修改就进行分支吗,git,Git,我有一个项目已经完成了基本模型(在master),然后我提交了它们 然后我创建了两个分支用户和产品,使用: git checkout -b user git checkout -b product git checkout user 然后我在user分支中添加代码,但是我发现我必须对基本模型进行一些更改 然后我切换到master: git checkout master 但是我发现我在user分支中所做的修改现在可以在工作目录中看到 如何避免这种情况?由于将更改为master和修改的频率很高

我有一个项目已经完成了基本模型(在
master
),然后我提交了它们

然后我创建了两个分支
用户
产品
,使用:

git checkout -b user
git checkout -b product
git checkout user
然后我在
user
分支中添加代码,但是我发现我必须对基本模型进行一些更改

然后我切换到
master

git checkout master
但是我发现我在
user
分支中所做的修改现在可以在工作目录中看到


如何避免这种情况?由于将
更改为master和修改
的频率很高。

请查看
git stash
命令。您可以将您的工作隐藏在用户分支上,然后签出主分支并处理它。在向主分支提交之后,请签出用户分支
git stash pop
将恢复用户分支的先前状态。您可以隐藏多个分支的状态,但这可能会让人困惑。

git checkout 要准备工作,请通过更新工作树中的索引和文件,并将头部指向分支来切换到它

保留对工作树中文件的本地修改,以便 他们可以致力于解决问题

资料来源:

因此,作为一种解决方案您可以使用
git stash
或者您可以使用
git commit
-当您返回原始分支时,执行软重置
git reset--soft HEAD^
这将回滚上次提交,并且不会删除文件

--soft根本不接触索引文件或工作树(但会将头部重置为,就像所有模式一样)。这就剩下了一切 您更改的文件“要提交的更改”,如git状态所示 它