将存储库文件夹链接到另一个非repo文件夹

时间:2018-05-04 21:06:32

标签: git github filesystems

我有本地Windows机器,我用作本地开发环境。 其项目目录如下。

C:\xampp\htdocs
 |-project1
 |-project2

我还使用Github / AWS代码部署。我发布更改时,基本上就是repo,它将更改部署到服务器。

然而,repo文件的结构有点不同。这是它在我的计算机上本地结构化的方式。

..\Github
     |-repository
        |-folder1
        |-folder2
        |-project2
        |-some other files

因此,此存储库中关联的项目是 project2 ,其中包含我的服务器的网站文件(因此它在htdocs文件夹中的原因)。目前我做出改变的方式是:

  • 在htdocs
  • 处理
  • 然后将所有更改复制到repo文件夹

如果您有很多变化,这很乏味。 然后我遇到了链接 htdocs / project2 repository / project2 的符号链接,遗憾的是,这些链接不受支持GIT中。

有没有办法链接它们,或者可能告诉git使用 htdocs \ project2 文件夹作为 project2 文件夹

2 个答案:

答案 0 :(得分:1)

你无法真正使用git链接文件夹 - 这更像是操作系统的东西 - 可能如果你在使用linux的地方,sym-links会更好。

但是,如果project2是某种常见的repo(即它将在​​多个地方使用),您可以将它作为一个单独的存储库,然后将其作为子模块添加到您的github / repository中。

然后git将你的project2 repo克隆到htdocs(不是作为子模块,而是作为普通的repo)。

现在,当您对htdocs / project2进行更改时,可以将它们推送到远程(在github中)。如果对更改感到满意,则更新github / repository(其中包含子模块preject2)以指向最新的project2提交。然后,您的AWS将像以前一样使用更新的项目2自动部署。

这可能是这类工作的正确“工作流程”......

答案 1 :(得分:0)

我认为使用符号链接的方法可行。你可以从htdocs / project2 - >建立一个链接。到repository / project2。在Windows上,可以使用mklink完成此操作。

我会改为对齐2个结构。因为您的本地XAMPP配置完全由您控制,所以您可以配置Apache,以便您的DocumentRoot指向您的... \ Github \ repository文件夹而不是C:\ xampp \ htdocs。然后你可以在不复制的情况下工作并提交到同一个地方。