我几乎没有工作树:
$ git worktree list
/home/kes/work/projects/video/app 7509c7f [dev]
/home/kes/work/projects/video/second c12cdf9 [newbr]当我从git checkout newbr分支(工作树)执行dev时,我希望切换到不同的目录,而不是get错误:
$ git checkout newbr
fatal: 'newbr' is already checked out at '/home/kes/work/projects/video/second'目前我做的是:
cd /home/kes/work/projects/video/second有自动完成此操作的选项吗?
发布于 2020-09-05 16:12:12
不,这不可能。当前工作目录是进程的属性(在本例中是shell),从它调用的进程(如Git)不能更改父进程的工作目录。允许这种情况发生会破坏很多软件。
您可以在shell中创建一个别名或函数,比如gco,它将查找存储库是否有工作树,如果有,切换到它,如果没有,请查看该分支。由于该操作完全发生在shell中,因此可以更改shell的工作目录。
https://stackoverflow.com/questions/63753680
复制相似问题