Git 在不提交工作代码的情况下切换分支

Git 在不提交工作代码的情况下切换分支,git,Git,我正在使用git作为源代码存储库,当前代码处于混乱状态,希望切换到其他分支进行一些工作。问题是我不想只做一半的工作,所以我以后怎么才能回到这一点上 您不能创建另一个目录并将所需的分支克隆到其中吗 如果将运行时配置为使用特定目录,请将其作为指向当前使用的分支克隆目录的链接。通过这种方式,您可以在本地拥有多个分支,而无需对本地资源进行大量改组(只需一个简单的脚本来重新链接运行时/服务器使用的目录)。您可以隐藏分支。以下是一个例子: 您可以使用“放弃”更改一段时间,然后,当您想要恢复以前的更改时,使用

我正在使用
git
作为源代码存储库,当前代码处于混乱状态,希望切换到其他分支进行一些工作。问题是我不想只做一半的工作,所以我以后怎么才能回到这一点上

您不能创建另一个目录并将所需的分支克隆到其中吗


如果将运行时配置为使用特定目录,请将其作为指向当前使用的分支克隆目录的链接。通过这种方式,您可以在本地拥有多个分支,而无需对本地资源进行大量改组(只需一个简单的脚本来重新链接运行时/服务器使用的目录)。

您可以隐藏分支。以下是一个例子:

您可以使用“放弃”更改一段时间,然后,当您想要恢复以前的更改时,使用
git stash pop
*

您还可以(而且更安全)提交WIP(在制品)工作,切换到另一个分支,执行您的工作,切换回原始分支,完成原始工作,然后提交到一个分支。
请记住,提交并不等于推送,因此您可以在本地创建一个混乱的历史记录,但是,一旦重新设置并压缩,您(和您的团队)将只看到干净的版本


*注意,因为如果你藏了不止一次,git pop只会在最后一次藏起来。在这种情况下,您需要使用
git pop stash@{}

您有两个选项来执行此操作

选项1:-为工作代码创建补丁,并检查所有工作代码是否切换到另一个分支

选项2:-您可以隐藏您的分支。单击此处了解更多详细信息示例:

如果您有较新的git(>=2.5.0版),则可以使用git worktree

通过以下命令,您可以签出要使用的临时工作树

git工作树添加sourcetree\u目录分支\u名称

完成此分支的工作后,可以使用以下命令将其删除

git工作树修剪


使用命令行,简短回答:

git stash
git checkout otherBranch
如果支路处于原始使用状态:

git checkout origin otherBranch

..
do your changes/commits
..
git stash apply

使用
git stash apply
可以恢复以前的更改。您可以找到合并冲突…修复它们并再次提交。

请提供一些代码。链接应该只是对answerLink的补充对我来说似乎已经死了。另一个关于隐藏的有趣链接:在我看来,链接似乎死了。另一个关于隐藏的有趣链接: