如何将目录提交到git存储库?

wis*_*shi 21 git

我在这里阅读了很棒的git教程,我无法创建目录.

我的文件夹结构是:

代码 - Python - C++ - F# - ...

在初始化的本地存储库"代码"中,我更改为子文件夹"Python","C++",...确实git init,现在我想在我的版本控制服务器上使用相同的结构.

% git commit -m "added directories"
# On branch master
nothing to commit (working directory clean)
Run Code Online (Sandbox Code Playgroud)

我想我得到了一些完全错误的东西,是吗?

谢谢,愿

Juh*_*älä 34

尝试先将一些文件添加到目录中.您可以向目录添加一些虚拟文件,并在添加目录的实际内容后删除该文件.

Git不跟踪空目录,它跟踪文件及其内容.

git init
mkdir foo
touch foo/dummy_empty_file

git add foo
git add foo/dummy_empty_file
git commit -m "adding files"
Run Code Online (Sandbox Code Playgroud)

  • '.gitignore`'适用于那个(或者是一个虚拟的'`.keepme`'). (4认同)
  • 在 Rails 中,约定是在目录中放置一个 `.keep` 文件。这对我来说似乎是一个合理的(事实上的)标准,我建议您使用该文件名。 (3认同)
  • 你只需要在这里添加两个中的一个.给定目录时,`git-add`以递归方式添加它.另一方面,添加目录中的唯一文件与添加整个目录相同,因为正如您所说,git跟踪文件及其内容. (2认同)

Mar*_*c W 24

Git不会提交空目录.首先必须在目录中有文件.

  • 但这个“文件”可能是一个不可见的 .gitignore 文件,请参阅http://stackoverflow.com/questions/115983/how-do-i-add-an-empty-directory-to-a-git-repository (2认同)