“未跟踪文件”?

当我做一个git commit -a ,我看到以下内容:

  # Please enter the commit message for your changes. Lines starting
  # with '#' will be ignored, and an empty message aborts the commit.
  # On branch better_tag_show
  # Changes to be committed:
  #   (use "git reset HEAD <file>..." to unstage)
  #
  # modified:   ../assets/stylesheets/application.css
  # modified:   ../views/pages/home.html.erb
  # modified:   ../views/tags/show.html.erb
  # modified:   ../../db/seeds.rb
  #
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  # ../assets/stylesheets/
  # ../views/pages/

那些未跟踪的文件是什么意思? 所有的变化都被确认了。 我不明白为什么git在这里警告我关于未跟踪的文件。

编辑

好吧,我看到很多混淆的答复。 这是我git commit -a后发生的事情git commit -a

# On branch master
nothing to commit (working directory clean)

正如你所看到的,除了那些应用了更改的四个文件之外没有其他的东西。

我的问题应该改写如下: 为什么git会在跟踪此提交中的所有更改时警告我关于未跟踪的文件?

换句话说, git commit消息中的未跟踪警告是不必要的?


对于有同样问题的其他人,请尝试运行

git add . 这将添加当前目录的所有文件以跟踪(包括未跟踪)然后使用

git commit -a提交所有跟踪的文件。

正如@Pacerier所建议的那样,做同样事情的一个班轮是

git add -A


git commit -am "msg"git add filegit commit -m "msg"

如果你有一些从未添加到git跟踪的文件,你仍然需要做git add file

“git commit -a”命令是两步过程的捷径。 在您修改回购已知的文件之后,您仍然必须告诉回购,“嘿! 我想将它添加到staged文件并最终提交给你。“这是通过发出”git add“命令完成的。 “git commit -a”正在暂存文件并在一个步骤中提交。

来源:“git commit -a”和“git add”


你应该输入命令行

git add --all

这将提交所有未跟踪的文件

链接地址: http://www.djcxy.com/p/7913.html

上一篇: a "untracked files"?

下一篇: What's the difference between `git add .` and `git add