Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何提交和/或添加未更改的文件?_Git_Github_Git Commit_Git Add - Fatal编程技术网

Git 如何提交和/或添加未更改的文件?

Git 如何提交和/或添加未更改的文件?,git,github,git-commit,git-add,Git,Github,Git Commit,Git Add,我有一种情况,我修改的文件不会显示为修改后的文件 我还能提交那个文件吗 我可以将列为未更改文件的文件添加到已更改文件中吗?谢谢 更新: 当我尝试添加文件时,终端会出现以下错误: The following paths are ignored by one of your .gitignore files: folderpath/filename.java Use -f if you really want to add them. fatal: no files added 但当我打开.git

我有一种情况,我修改的文件不会显示为修改后的文件

我还能提交那个文件吗

我可以将列为未更改文件的文件添加到已更改文件中吗?谢谢

更新: 当我尝试添加文件时,终端会出现以下错误:

The following paths are ignored by one of your .gitignore files:
folderpath/filename.java
Use -f if you really want to add them.
fatal: no files added
但当我打开.gitignore文件时:

bin
gen
#built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated GUI files
*R.java

# Mac OS file
.DS_Store
信息/排除

# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~

我非常确定我的文件夹路径及其文件名未包含在.gitignore和exclude文件中

请检查:您修改的文件可能与存储库根目录中的.gitignore文件中的模式匹配。如果发生这种情况,文件将“超出”您发布的
的范围。gitignore并不表示该文件被忽略,但工作副本上不仅存在定义要忽略的文件的
.gitignore

有关与忽略内容相关的文件和环境的概述,请参阅

尽管如此,您从git得到的信息非常清楚:如果您不想找到文件被忽略的原因,如果您确实想添加它们,请使用-f。


编辑:

如果您完全确定已检查了所有
.gitignore
s,请仔细查看
.gitignore
中的模式。例如,您的
.gitignore
包含模式
gen
。如果在
mygenerator/myfile.java
中找到更改的文件,则
gen
模式将匹配
my
gen操作器,并将忽略更改…

git不会跟踪未跟踪文件中的更改

因此,首先确保您的文件实际上是由git跟踪的。其他人详细阐述了文件可能被导入的原因(
.gitignore
.git/info/exclude
,…)

然后确保您的文件确实包含更改(看起来很明显)。 您对文件做了什么样的更改?
注意,您可以将git配置为忽略对EOL的更改,因此通过将CRLF更改为LF来修改文件不符合“要提交的更改”的条件。检查。

我正在检查您的
的初始源代码。gitignore

我脑海中突然闪现出一个想法:你正在使用以下模式:

bin
gen
当他们使用

# generated files
bin/
gen/

差别是微不足道的,
/
,但您的规则可能不仅匹配文件夹,还匹配文件

但如果该文件位于哪个文件夹中?可能由于文件夹限制而被忽略了?请您提供文件和文件夹的全名,以便我们更清楚地了解问题?我相信这不是什么大秘密?谢谢你的评论,但当我试图修改那个文件夹中的其他文件时,git可以检测到我修改过的文件被修改了。听起来很奇怪,对吧?是的。。。但是这一行怎么样呢?
*R.java
也许您的文件名与之匹配?如果你在Windows上,它可能会忽略大小写并。。。分数我建议逐个禁用
.gitignore
中的语句,运行
git status
并查看发生了什么。这是“猴子的方法”,但比猜测更有效。R.java是Eclipse自动生成的文件..从.gitignore内容看,我的文件不包括..我想我会按照eckes的建议使用-f添加文件..你也检查了
.git/info/exclude
吗?请查看我编辑的帖子。。我在那个文件中添加了一些代码行,不是简单的字符或EOL..嗨,埃克斯..我在另一篇文章中尝试了你的答案:-添加了文件夹-我的文件不在.gitignore和exclude列表中-当我尝试键入git config--global core.excludesfile时,终端不会打印任何东西…-git状态--忽略显示我要提交的所有更改列表(听起来很奇怪吧?)是的,该文件的文件夹不在bin/gen:)谢谢您的解释!我从来不知道这样的规则。。不,我的文件夹路径名不包含gen或BIN。请发布完整路径和完整文件名好吗?这将帮助我们解决问题!嗨,埃克斯..很抱歉,我无法显示完整路径,因为它是凭证:(@Rendy,你能显示文件名吗?因为很难搜索答案-我们需要知道它与哪个模式匹配。嗨,alexey,谢谢你的帮助,但我无法显示它的路径,因为它是凭证:(好的,但是你确定在文件名中找不到
bin
gen
块吗?我打赌是的!完全同意你的编辑!我相信,后面的斜杠是问题的根源。