Git加载项存储库子目录返回';致命:[文件夹]位于存储库之外';

Git加载项存储库子目录返回';致命:[文件夹]位于存储库之外';,git,version-control,Git,Version Control,我有一个网站,我需要通过linux命令行将系统生成的文件和文件夹提交到现有的git存储库 我已将repo拉入服务器,正在repo的子文件夹中写入文件,但当我运行git add[folder]/*时,会出现一个错误,即文件夹在存储库之外。我不知道如何度过这一关。我是git的新手,请帮帮我 在看不到实际命令的情况下,我只能进行有根据的猜测。错误在存储库外部通常来自您尝试添加的目录实际上不是存储库的子目录 例如,如果您尝试添加类似于。/blah的内容或使用类似于/blah的绝对目录 $ mkdir t

我有一个网站,我需要通过linux命令行将系统生成的文件和文件夹提交到现有的git存储库


我已将repo拉入服务器,正在repo的子文件夹中写入文件,但当我运行
git add[folder]/*
时,会出现一个错误,即文件夹在存储库之外。我不知道如何度过这一关。我是git的新手,请帮帮我

在看不到实际命令的情况下,我只能进行有根据的猜测。错误
在存储库外部
通常来自您尝试添加的目录实际上不是存储库的子目录

例如,如果您尝试添加类似于
。/blah
的内容或使用类似于
/blah
的绝对目录

$ mkdir test
$ cd test
$ git init
Initialized empty Git repository in /Users/schwern/tmp/test/.git/
$ git add ../blah
fatal: ../blah: '../blah' is outside repository
$ git add /blah
fatal: /blah: '/blah' is outside repository
在向其中添加文件之前,无需添加子目录。Git无论如何都不会跟踪目录,只跟踪那些目录中的内容
git add subdir/*
git add subdir
是(几乎)相同的命令

$ mkdir stuff
$ touch stuff/things
$ git add stuff/*
$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

    new file:   stuff/things
改为使用git add subdir

$ git add stuff
$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

    new file:   stuff/.dot
    new file:   stuff/things
$git添加内容
$git状态
论分行行长
初始提交
要提交的更改:
(使用“git rm--cached…”取消存储)
新文件:stuff/.dot
新文件:东西

所以答案是我在执行git add/path/to/folder/*时使用了绝对路径,而不是cd/path/to/folder/;吉特加*


出于某种原因,git不喜欢这条绝对路径,并且被它扼住了。谢谢大家的帮助

您可能只需使用
git add folder
。这应该适用于所有子文件和文件夹。另外,请包括您收到的完整错误消息。
git add folder/*
应该可以工作,即使尚未添加
folder
。一、 也希望看到实际的命令和错误消息。
$ git add stuff
$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

    new file:   stuff/.dot
    new file:   stuff/things