1

vim リポジトリに 2 つのサブモジュールを追加しましたが、git status コマンドは常に次のように出力します。

On branch master
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:   bundle/snipmate
   modified:   bundle/yankring

私は実行しました:

git submodule init
git submodule update
git add .

そして、それをなくすものは何も起こりません。何か案は?

4

1 に答える 1

3

これはおそらくgit-1.7.0で追加された変更によるもので、変更されたファイルまたは追跡されていないファイルが含まれている場合、サブモジュールはダーティとしてマークされます。

git status--ignore-submodules特定の変更を無視するオプションがあります。からman git-status:

--ignore-submodules[=<when>]
              Ignore changes to submodules when looking for changes. <when>
              can be either "none", "untracked", "dirty" or "all", which is
              the default. Using "none" will consider the submodule modified
              when it either contains untracked or modified files or its HEAD
              differs from the commit recorded in the superproject and can be
              used to override any settings of the ignore option in git-
              config(1) or gitmodules(5). When "untracked" is used submodules
              are not considered dirty when they only contain untracked
              content (but they are still scanned for modified content).
              Using "dirty" ignores all changes to the work tree of
              submodules, only changes to the commits stored in the
              superproject are shown (this was the behavior before 1.7.0).
              Using "all" hides all changes to submodules (and suppresses the
              output of submodule summaries when the config option
              status.submodulesummary is set).

(このオプションはgit-1.7.2でのみ追加されました)

于 2010-10-05T05:18:19.743 に答える