Git正在存储库中创建目录[Codespaces]



我的设置:我在Eclipse IDE本身中进行本地提交。我的本地存储库也位于工作区中。不知怎的,我无法使用Eclipse进行远程提交,所以我就这样做了,因此我一直在使用gitbash对codespaces.com 进行远程提交

git remote add origin git@codespaces.com:acct_name/repo_name
git push origin master

到目前为止,这对我很有用。

现在我创建了另一个存储库,比如repo_foo。对于这个存储库,我想在其中放置多个目录(项目)。我真的不需要这里的代码空间Projects。我只想能够做到这一点。

git remote add origin git@codespaces.com:acct_name/repo_foo/proj_1 
(currently this gives no repository in path error)

所以回购结构应该是这样的。

repo_foo
 - proj_1
   -src
 - proj_2
   -src
   -lib

等等。

对此有什么想法吗?

现在我创建了另一个存储库,比如repo_fo。对于这个存储库,我想在其中放置多个目录(项目)。我真的不需要这里的代码空间"项目"。我只想成为能够做到这一点。

所以你想在其他git存储库中嵌套git存储吗?目前还不清楚你的最终目标是什么。也许git submodules能满足你的需求?子模块基本上是克隆到另一个git存储库中的其他存储库。假设你有一个主项目,但你也有一个你想使用的伟大库的repo。您可以将库添加为子模块&请参阅主要项目。这样,如果您对库进行更改,则将该库作为子模块的项目可以自动更新。如果你需要的话,这是一个非常强大的概念。

从我的角度来看,问题是你正在卷积目录的概念&一个存储库变成一件事。因此,当您执行以下操作时:

git remote add origin git@codespaces.com:acct_name/repo_foo/proj_1

你在说,"进入这个回购。在这个回购中创建另一个回购。"

将不存在git@codespaces.com:acct_name/repo_foo/proj_1origin,因为git@codespaces.com:acct_name/repo_foo的父回购已经存在。

你需要做的是为每个项目设置一个回购;决定一个命名方案。类似于:

  • repo_fo_proj_1
  • repo_fo_proj2
  • 等等

你的git remote add origin命令是:

git remote add origin git@codespaces.com:acct_name/repo_foo_proj_1
git remote add origin git@codespaces.com:acct_name/repo_foo_proj_2
etc…

初始化文件夹中的git时,会自动跟踪所有子文件夹。当使用多个项目或文件夹时,每个项目或文件夹都应单独跟踪。你应该把它们保持在同一水平上。

--home
  --Workspace
    --project1
    --project2
    --project3

如果您在工作区意外初始化git,当您选中git status时,它会包含下面要跟踪的所有文件和文件夹。当您执行git remote add origin时,.git/config下的配置文件会添加一个远程url,用于推送和拉取操作。因此,如果初始化repo_fo并提供remote add,则无法在proj_1下执行相同的操作。它将被自动跟踪,所有推/拉操作都将使用repo_foo/.git/config文件中的路径。

相关内容

  • 没有找到相关文章

最新更新