git:复制本地不存在的远程分支的工作树

git:复制本地不存在的远程分支的工作树,git,git-branch,git-clone,git-checkout,git-worktree,Git,Git Branch,Git Clone,Git Checkout,Git Worktree,在工作中,我有一个项目,它有两个不同的版本,具有一些共同的基本功能。我使用git-worktree将这些版本放在单独的文件夹中,每个版本在master旁边都有两个长期运行的分支,而master用于公共功能。因此,有3个文件夹和一个存储库。此外,还有一个远程存储库,所有内容都推送到那里 $git branch -a *master version-1 version-2 remote/origin/master remote/origin/version-1 remote/origin/

在工作中,我有一个项目,它有两个不同的版本,具有一些共同的基本功能。我使用
git-worktree
将这些版本放在单独的文件夹中,每个版本在
master
旁边都有两个长期运行的分支,而
master
用于公共功能。因此,有3个文件夹和一个存储库。此外,还有一个远程存储库,所有内容都推送到那里

$git branch -a
*master
 version-1
 version-2
 remote/origin/master
 remote/origin/version-1
 remote/origin/version-2
在家用电脑上,我有
master
文件夹,这个本地存储库与我的工作报告链接到同一个远程存储库。当我得到分支列表时,它就像:

$git branch -a
*master
 remote/origin/master
 remote/origin/version-1
 remote/origin/version-2
我想将
签出
版本1
,并将版本a的全部内容复制到本地文件夹,git将该文件夹作为
工作树进行跟踪,就像在我的工作中一样。

git clone
git checkout
是这样做的,还是我需要做一些更棘手的事情?

最后,我使用它来创建相同的工作树,就像在我的工作中、在我的家中一样

$ git worktree add --checkout ../version-1 version-1
$ git worktree add --checkout ../version-2 version-2

它在不同的文件夹(工作树)中签出我长期运行的分支。

最后,我使用它来拥有与我的工作、我的家一样的工作树

$ git worktree add --checkout ../version-1 version-1
$ git worktree add --checkout ../version-2 version-2

它在不同的文件夹(工作树)中签出我长期运行的分支。

按版本,我指的是针对不同客户的不同功能,而不是版本控制本身!读了你的描述后我很困惑,因为你在家里和工作中也可以做同样的事情。您可以从家用电脑存储库中的远程分支创建另一个本地分支,然后使用
git worktree
将其签出到另一个本地文件夹中。我认为您误解了git worktrees。它们从来都不是真正的“必要”,它们真的可以让一些东西更快或更节省空间。只需从常规的
git clone
开始,一旦你弄明白了这一点,你就可以研究如何用基于另一个克隆的工作树替换一个克隆。@ElpieKay澄清一下,我有一台电脑在工作,另一台在家。我在两地从事同一个项目。正如您所建议的,如果我从我家的远程分支创建另一个本地分支,它不会添加另一个不必要的分支吗?我想拥有我之前提到的3个分支。@Mort
worktree
在分离文件夹和IDE方面帮了我很大的忙。同样,我在工作电脑上有3个单独的文件夹,但在我的家用电脑上只有一个主文件夹(因为我在添加这1和2个版本之前在家工作了一段时间),现在我回到家里工作,需要更新我的工作文件夹,但我希望远程git branch跟踪它。按版本,我指的是针对不同客户的不同功能,而不是版本控制本身!读了你的描述后我很困惑,因为你在家里和工作中也可以做同样的事情。您可以从家用电脑存储库中的远程分支创建另一个本地分支,然后使用
git worktree
将其签出到另一个本地文件夹中。我认为您误解了git worktrees。它们从来都不是真正的“必要”,它们真的可以让一些东西更快或更节省空间。只需从常规的
git clone
开始,一旦你弄明白了这一点,你就可以研究如何用基于另一个克隆的工作树替换一个克隆。@ElpieKay澄清一下,我有一台电脑在工作,另一台在家。我在两地从事同一个项目。正如您所建议的,如果我从我家的远程分支创建另一个本地分支,它不会添加另一个不必要的分支吗?我想拥有我之前提到的3个分支。@Mort
worktree
在分离文件夹和IDE方面帮了我很大的忙。同样,我在工作电脑上有3个单独的文件夹,但在家电脑上只有一个主文件夹(因为我在添加这1和2个版本之前在家工作了一段时间),现在我回到家里工作,需要更新我的工作文件夹,但我希望远程git分支跟踪它。