有关各种原因(代码评审大部分)我需要从目前的发展分支经常切换到其他的分支。

目前,我使用任一“git的藏匿”搁置未提交的修改,结账其他分支,然后切换回并做“git的藏匿申请”

不过,有时我不得不有一些新添加的文件,这是不被跟踪。不幸的是,积攒并不影响他们。在这种情况下,我不得不将它们添加到索引和存储。

我寻找这里是一个工作流程,其中我不得不执行一组最小的动作来切换支路,优选避免添加文件的入索引。

有帮助吗?

解决方案

您可以克隆回购到另一个目录和默认分支您想要的:

# assume your original repo is in myproj
$ git clone myproj myproj_clone --branch my_branch

如果你然后去myproj_clone文件夹,它会在你的分支

$ cd myproj_clone
$ git branch
* my_branch

其他提示

您可以克隆的克隆库和审查/工作。删除克隆当您完成。如果你碰巧就分支/克隆的变化,你可以把它们放回。我认为一个本地克隆便宜。即使不是这样,磁盘空间仍然比你的时间更便宜。

我不知道那个克隆正确的解决方案,但由于2个答案被提出,它是对大脑,所以我提供关于这一主题的修改。克隆可能不会便宜。在磁盘空间方面,这是无关紧要的,但其本身使克隆需要几秒钟,这就是太多的时间浪费在不必要的操作。作为替代方案,你可以简单地创建使用旧的git的工作目录新的工作目录。也就是说,如果您当前的工作目录是“一”(有改动和联合国上演文件),请尝试:

$ mkdir ../b
$ cd ../b
$ echo 'gitdir: ../a/.git' > .git
$ git checkout -f foo

现在,b是有效的克隆,分支FOO,和你有两个工作目录一起玩。你需要什么就分支FOO在工作目录B,然后回去和结帐你是在你离开时的分支。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top