我认为如果你想跟踪文件,你应该git添加[你想跟踪的文件]

我不知道为什么我收到消息说更改没有提交。

如果这些文件不是暂存的,git会显示这些文件是Untracked的

我所做的只是从develop分支中创建一个新特性,并在feature/change_excel_format分支中工作

我以为那些文件应该处于阶段性状态,

但是git状态告诉我没有为提交准备更改

简短的, 我只知道git有3个阶段untracked, staging, committed 谁能告诉我,“改变”的阶段是什么,而不是“提交”的阶段

如果我修改了文件a(已经在repo中)

然后输入git st, git会告诉我Changes not staging for commit

如果我git a,那么文件a将处于阶段性状态

如果我现在修改文件a,文件a在git中会有两种状态,对吧?

所以我必须决定是让有舞台的a被提交还是让没有舞台的a被舞台, 然后之前的暂存文件a将被丢弃?


当前回答

我犯了一个愚蠢的错误。我试图在一个git没有初始化的文件夹中运行这个命令。确保你有。git文件夹或运行命令

git init

其他回答

你必须使用git add来执行它们,否则它们将无法提交。它会通知git哪些是你想要提交的更改。

Git add -u:/将所有修改过的文件添加到舞台 Git add *:/将修改过的和任何新的文件(没有gitignore'ed)添加到舞台

遵循以下步骤:

1- git私藏 2- git添加。 3- git commit -m "你的提交信息"

我犯了一个愚蠢的错误。我试图在一个git没有初始化的文件夹中运行这个命令。确保你有。git文件夹或运行命令

git init

对我来说,有效的方法是转到根文件夹,即.git/所在的文件夹。 我在其中一个子文件夹中得到了错误。

当您更改存储库中已经存在的文件时,如果您想让它暂存,则必须再次添加它。

这允许您仅提交自上次提交以来所做更改的子集。例如,假设您有文件a、文件b和文件c。您修改了文件a和文件b,但这些更改在性质上非常不同,您不希望所有这些更改都在一次提交中。你的问题

git add a
git commit a -m "bugfix, in a"
git add b
git commit b -m "new feature, in b"

顺便说一句,如果你想提交所有东西,你只需要输入

git commit -a