如何使用git对项目中的某些子文件夹进行版本控制?

时间:2015-12-17 07:53:32

标签: git git-extensions

我有一个PHP项目文件夹,文件太多, 如果在项目根文件夹中使用git init,那将是浪费时间。 现在我只想版一些文件夹,

--------------
FolderA
----data
----class
------class1
------class2
----html
------front
------backend
---------------

我只希望版本为classfront

怎么做? 感谢

3 个答案:

答案 0 :(得分:1)

git init只创建一个空白的Git存储库,与空的目录相比,没有什么能比较大的目录更耗时。

要为FolderA创建Git存储库并将classhtml/front目录添加到其中,请执行以下操作:

cd FolderA
git init
git add class
git add html/front
git commit

如果您想保留其他文件夹,最好还要创建一个包含以下内容的.gitignore文件:

/data
/html/backend

将其保存到文件夹FolderA中,并使用git add将其添加到存储库并提交更改。

答案 1 :(得分:0)

使用.gitignore文件并选择:

  1. 排除除了您想要版本的两个文件夹
  2. 之外的所有内容
  3. 包含所有内容并排除您不想要的文件夹

答案 2 :(得分:0)

最好的方法是使用子模块 Submodule是另一个git项目中的一个git项目。

每个项目将生活在自己的文件夹(=子模块)中并与之隔离 根文件夹,这意味着它是一个独立的项目。作为这样一个项目,你可以在这个仓库管理你的版本。

以下是根存储库中的子模块示例 enter image description here