Nate Reed
Nate Reed

Reputation: 7011

Git: file "changed but not updated"

What does "Changed but not updated mean"? These files are in git, they've been modified but when I run "git status," these changes appear under "Changed but not updated" instead of "Changes to be commited."

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
# modified:   breakouts/views.py
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified:   templates/registration/login.html
# modified:   templates/registration/registration.html

# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
# context_processors.py
# static/#css.css#

Since they've already been added why aren't they "Changes to committed"?

Upvotes: 31

Views: 20066

Answers (3)

KitsuneYMG
KitsuneYMG

Reputation: 12901

You have to use git add every time OR use git commit -a or git commit --all instead of plain git commit.

from Git docs:

-a
--all
  Tell the command to automatically stage files that have been modified
  and deleted, but new files you have not told git about are not affected.

add is basically the "take notice of this file/directory" command. Not CVS's or subversion's track changes to this file.

Upvotes: 24

ocodo
ocodo

Reputation: 30319

The git add <file> adds the 'changes' to your local commit schedule, if those changes aren't added, then they aren't committed.

Why? This is git's workflow, just like anything there is terminology that is open to interpretation, perhaps you're used to SVN's idea of add, try to forego what you assume and learn how git does things.

Upvotes: 3

Simon
Simon

Reputation: 32943

Every time you modify a file, you have to add it using git add to be able to commit it, even if you did add it at the beginning.

Upvotes: 6

Related Questions