【发布时间】:2013-02-14 03:01:18
【问题描述】:
我想使用 git 将 NopCommerce 解决方案添加到存储库。
我进入了存储 .sln 文件的文件夹并使用了git add . command。
之后我运行了 git commit --dry-run 并且输出有点奇怪,这是输出:
新文件:Nop.Web
新文件:Nop.Web.Framework/.gitignore
nop.web 文件夹以某种方式被检测到,但内容却没有。检测到其兄弟姐妹,并成功上传所有文件。
如果我转到 nop.web 文件夹并使用 git add . 或其他任何东西,在使用 git commit --dry-run 后,我会收到一条“干净的回购”消息。
如果我执行推送,当我尝试在 appharbor 中构建这个项目时,nop.web 文件夹中的文件会丢失。
为什么这个文件夹不见了?如何手动添加?
编辑:来自 AppHarbor FAQ 的 .gitignore:
[Bb]in
[Oo]bj
*.suo
*.user
文件夹中有一个 .gitignore,其中包含一个 .csproj 文件。都是一样的
编辑2:
D:\nopcommerce\Presentation\Nop.Web>git ls-files --exclude-standard -o
D:\nopcommerce\Presentation\Nop.Web>git diff-index --name-status HEAD
fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tr
ee.
Use '--' to separate paths from revisions
这是我发现的一件有趣的事:
D:\nopcommerce\Presentation\Nop.Web>git add ./Administration
fatal: Path 'Presentation/Nop.Web/Administration' is in submodule 'Presentation/
Nop.Web'
我会尝试查找有关子模块的信息以及如何处理它们
【问题讨论】:
-
你能把.gitignore的内容贴出来吗?
-
@brian-d 将 gitignore 内容添加到问题中
-
你能把
git ls-files --exclude-standard -o和git diff-index --name-status HEAD的输出贴出来 -
@forivall 完成。第二个命令提出了一些我正在尝试修复并再次运行的问题
-
哦,你添加了一个子模块。这就解释了事情。大多数带有子模块的工作流程都是只读/获取的,但您正在尝试将文件添加到其中。谷歌搜索会给你一些很好的资源。我在想这是某种奇怪的 Windows 符号链接或连接或其他东西。此外,“未知修订”错误消息是因为这是您的初始提交,所以还没有 HEAD。
标签: git appharbor nopcommerce