更新:以下の私の質問のリンクによると、「M」は、ブランチの変更中に表示されるとマージされたことを意味するようですが、次のように変更されましたgit status
: 「マスターブランチに切り替えると、作業ディレクトリは「ダーティ」と見なされますREADME ファイルがインデックスに追加されておらず、コミットされていないためです。その結果、git は、テスト ブランチの README の内容をマスター ブランチの README ファイルにマージしようとします。"
私の git 無知を許してください。しかし、アップストリーム ブランチで変更を加えてから、(コミットせずに) マスター ブランチをチェックアウトすると、変更されたファイルが Merge として現在のブランチに続くのはなぜですか? マージするように指示したときにのみ、git がマージされると思いました。編集内容が別のブランチに反映されることを常に望んでいるわけではないので、マージする前に git に確認するように指示する方法はありますか?
iow: 現在のブランチでコミットされていない編集で誤って別のブランチに切り替えた場合、別のブランチを台無しにしないように git に指示するにはどうすればよいですか?
[on branch:foo]
$ echo test >> main.c
[on branch:foo]
$ cat main.c
#include <stdio.h>
int main void (int argc, char **argv)
{
printf ("Hello world!\n");
return (0);
}
test
[on branch:foo]
$ git checkout master
M main.c
Switched to branch 'master'
[on branch:master]
$ cat main.c
#include <stdio.h>
int main void (int argc, char **argv)
{
printf ("Hello world!\n");
return (0);
}
test
[on branch:master]
$