masterブランチと、masterブランチからgit checkout -b anotherで作成したanotherブランチがあります。anotherブランチでの変更はmasterブランチに影響を及ぼさないはずですが、どうも及ぼしているように見えます。
gitの動作としてこれは正しいのか。正しいとした場合、masterブランチに影響を及ぼさない開発ブランチを作るにはどうしたらよいか教えてください。
試したこと
現在あるブランチはmasterブランチのみ、カレントディレクトリには「これはmasterブランチです。」とだけ書かれたtest.htmlファイルがあります。
$ git branch * master $ ls test.html $ vi test.html これはmasterブランチです。 ~ :wq
この状態でanotherブランチを切り、test.htmlに変更を加えます。
$ git checkout -b another Switched to a new branch 'another' $ git branch * another master $ vi test.html これはmasterブランチです。 いいえ、これはanotherブランチです。(追記) ~ :wq
ここでmasterブランチに戻り、test.htmlを確認すると、anotherブランチでの変更内容が残っています。
$ git checkout master Switched to branch 'master' $ vi test.html これはmasterブランチです。 いいえ、これはanotherブランチです。(追記) ~
ここで期待する動きは、masterブランチのtest.htmlには、anotherブランチで追記した「いいえ、これはanotherブランチです。(追記)」が反映されていないことなのですが、期待に反して反映されてしまっています。
これはGitの正しい動作なのでしょうか。正しい場合は、"別途開発用のブランチ(or環境)を作り、その中での変更内容はmasterブランチには反映されない"という状況をつくるにはどうしたらよいでしょうか?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/23 04:46