推送时缺少git子文件夹

时间:2018-03-08 07:43:45

标签: git push gogs

我对Git有些问题,我无法用一个推送命令推送所有子文件夹

我有一个项目目录如下:

 cd project
 git init

使用此结构,我使用以下命令创建一个新的本地存储库:

 git add .
 git commit -m "First commit"
 git push origin -u master

然后,从项目文件夹我添加,提交和全部推送:

{{1}}

问题是在我的远程仓库中我发现只有第一级目录 所以我发现只有主要和工具,但没有找到文件夹。

目前我在整个目录树中没有任何.gitignore。

我做错了什么?

非常感谢

Update1:​​

提供更多信息,我使用gog作为git服务器https://gogs.io/

2 个答案:

答案 0 :(得分:1)

乍一看不是那么简单,你不能简单地添加空目录,但你可以通过将.gitkeep文件添加到每个空目录中来解决它:

find . -type d -empty -exec touch {}/.gitkeep \;

{}由find命令找到的每个emptydir替换,并且对shell(touch)命令变为$ 1。 \;标志着find的exec参数的结束。反斜杠" \"是逃避";"用于标记-exec命令结束的标志。否则它将被视为bash / shell终结符号";"

答案 1 :(得分:0)

最后我发现问题根...目录权限存在一些问题。使用简单的chown / chmod,一切都按预期工作。