Файлы перечислены в «git ls-files -s», но для каждого изменения необходимо «git add» - PullRequest
0 голосов
/ 18 октября 2018

Ниже у меня есть git-репозиторий, который, выполнив "git ls-files -s", я вижу, например, ".gitignore" находится в списке поэтапных файлов в git.

[root@localhost snmp]# git ls-files -s
100644 10498b95150d1a473ebb8a00bdc42f33f83446fb 0       .gitignore

Iтакже есть две ветви master и develop.

Проблема в том, что если я изменяю файл .gitignore в ветви master, он говорит:

[root@localhost snmp]# git status
On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   .gitignore

no changes added to commit (use "git add" and/or "git commit -a")

Так после I git checkout develop изменения будут переданы с master на develop, а git не говорит, что Please commit your changes ...;поэтому файл «.gitignore» в ветке разработки будет зависать!

Но при использовании git add .gitignore снова!

почему я должен git add .gitignore, даже если он находится в списке промежуточных файлов?!

...