9

我在 Git 下添加了一个 Laravel 应用程序,以便我可以推送到 Bitbucket。在根文件夹上,我git add -A在远程服务器上运行并推送。我检查了它没有发送所有文件夹;例如,它根本没有添加vendor文件夹。如何确保添加了所有子文件夹?当我运行时git status,它说:

# On branch master
nothing to commit, working directory clean

更新

我跑了git status --ignore,发现列出了以下文件:

stocktrack/app/storage/logs/laravel.log
stocktrack/app/storage/meta/services.json
stocktrack/app/storage/sessions/cdf664ccf42d040bc92d76418f736cc78e20d77a
stocktrack/app/storage/views/81774cd762e1fa0174ad42e0b0d53196
stocktrack/bootstrap/compiled.php
stocktrack/composer.lock
stocktrack/vendor/

.gitignore,我只加了.idea。为什么它忽略了其他人?

4

4 回答 4

18

您可以使用git check-ignore来确定路径是否被 git 忽略。

此外,check-ignore还提供了一个-v( --verbose) 选项,它将告诉您忽略文件的模式以及在哪里可以找到它。


假设您有一个具有以下目录结构的存储库。

bar/test/important
foo/a.tmp
foo/b

还有这个.gitignore文件。

bar/
foo/*.tmp

您想知道为什么您的important文件bar/test/会被忽略。

这是一个相当平淡的例子,但它只是用来展示这个概念。

现在让我们检查哪个模式忽略了您的important文件。

$ git check-ignore --verbose bar/test/important
.gitignore:1:bar/       bar/test/important

如您所见,check-ignore告诉bar/.gitignore文件中第 1 行的模式忽略了相关路径。

于 2015-02-19T07:31:45.873 回答
4

git add --force <Specific Folder>和我一起耍了花招。

于 2015-02-19T05:34:09.577 回答
0

我遇到的问题,很可能您遇到的问题是.git/info/exclude中列出了这些文件夹。我不得不从那里删除它们。然后我跑了:

  1. git rm -r -f --cached .
  2. git add .
于 2021-06-08T19:32:32.417 回答
-1

它似乎.gitignore有效。

检查存储库的根目录。您将找到一个 .gitignore 文件,其中包含要忽略的文件名。

于 2015-02-19T05:20:05.320 回答