如何将工作目录之外的文件夹添加到Git仓库中?

3

I have the directory structure like this:

main
|-- folderA
|-- folderB
      |
      |--- .git

很遗憾,我决定需要在同一代码库下跟踪文件夹A中的文件,就像文件夹B一样。

除了在文件夹B中创建符号链接之外,还有其他方法可以实现这个目标吗?


你会考虑在文件夹A上执行git init吗? - Jasonw
@Jasonw:显然这并不满足在同一个代码库中跟踪它们的要求,对吧? - Jan Hudec
3个回答

5

git mv命令可以将文件夹B(除了.git目录)中的内容移动到名为folderB的子文件夹中。

main
|-- folderA
|-- folderB
      |
      |-- folderB
      |--- .git

mv 命令用于将文件夹A移动到文件夹B。

main
|
|-- folderB
      |
      |-- folderA
      |-- folderB
      |--- .git

git addgit commit文件夹A

将顶层文件夹B重命名为temp

main
|
|-- temp
      |
      |-- folderA
      |-- folderB
      |--- .git

将文件夹A、文件夹B和.git文件夹移动到顶层主目录,命令为mv
main
|
|-- folderA
|-- folderB
|--- .git
|-- temp

删除临时文件夹。


0

我猜你可以把A作为主仓库,其中包括B;或者如果你需要某种分离,但又没有明确说明,那么你可以将A作为一个仓库,B作为一个子模块。


0

如果folderAfolderB之间没有直接依赖关系,只是某种程度上属于同一个项目,您可以将它们作为同一仓库的不同分支进行跟踪。

然后,git-new-workdir是一个有用的工具,可以为同一仓库(但具有不同分支)拥有两个工作目录。

当然,这仅适用于特殊情况 - 在一般情况下,最好按照Abizern的建议稍微移动一下文件夹。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接