目录位于多个位置的单Git回购

目录位于多个位置的单Git回购,git,Git,这里有个新问题。来自SVN,在那里我可以让多个分支签出所有地方(“/www/project1”、“/users/project2”等),但都位于同一个存储库中。每个分支机构都有自己的提交、修订等。你们都知道交易 在Git中是否有类似的方法,可以在一个repo中将目录/分支分散到各个地方?再一次,很抱歉这个新问题。想弄到一颗珠子。非常感谢您在这里提供的任何见解。Git是一个分布式控制版本。因此,您可以有本地分支和远程分支。要创建本地分支,请使用命令git branch name,其中name表示分

这里有个新问题。来自SVN,在那里我可以让多个分支签出所有地方(“/www/project1”、“/users/project2”等),但都位于同一个存储库中。每个分支机构都有自己的提交、修订等。你们都知道交易


在Git中是否有类似的方法,可以在一个repo中将目录/分支分散到各个地方?再一次,很抱歉这个新问题。想弄到一颗珠子。非常感谢您在这里提供的任何见解。

Git是一个分布式控制版本。因此,您可以有本地分支和远程分支。要创建本地分支,请使用命令
git branch name
,其中name表示分支名称。要查看所有本地分支,可以使用命令
git branch
。它将列出所有分支和当前分支。要在本地分支之间进行更改,请使用命令
git checkout name
,其中name表示分支名称


要将本地分支发送到远程存储库,请使用命令
git push origin name
,其中name表示分支的名称。要将本地分支复制到您的计算机,请使用命令
git checkout-t origin/name

通常,由于签出和合并过程非常快,使用git的开发人员会保留所有分支,并在同一文件夹中在它们之间切换。SVN分支系统非常慢,而且不是很好,这就是为什么他们通常将它们保存在不同的文件夹中

可以将分支签出到其他文件夹:

git --work-tree=<path to target> --git-dir="<path from source>" checkout <reference-name>
# example:
git --work-tree=. --git-dir="/base-repo/.git" checkout master
注意,在git中,每个克隆都是完整的repo(与服务器和其他文件夹中的完全相同)。每个克隆都是完全独立的,可以从任何其他repo进行推/拉操作


希望这有帮助

通常,由于签出和合并过程非常快,使用Git的开发人员保留所有分支,并在同一文件夹中在它们之间切换。SVN分支系统非常慢,而且不是很好,这就是为什么他们通常将它们保存在不同的文件夹中。
git clone path/to/local/repo/.git