申し訳ありません。この質問が無知であれば、私はGitを使い始めました。昨日私はmasterブランチを持つローカルリポジトリを作成し、次に 'firstbranch'という新しいブランチを作成しました。私は 'firstbranch'でいくつかの練習を行い、変更を追加/コミットしてからmasterブランチにマージします。どのアイデアです。 しかし、今日は中止したところを拾いましたが、今は「ファーストブランチ」を変更していますが、マージやコミットをせずにマスターに変更を加えています。私が間違っていることがあるのですか、これが起こるはずですか?私は仕事を廃止することを決めた場合にマスターを更新することなく、「firstbranch」に変更を加えることを明らかにしたいと思います。Git masterブランチが自動的に更新されます
答えて
gitには、作業ツリー、インデックス、データベースという3つの異なるタイプのストレージがあります。これらの相互作用の仕組みを理解することは非常に重要です。
一般に、作業ツリーはファイルと直接対話する場所です(ファイルエクスプローラやIDEで表示される、テキストエディタで作業します)。作業ツリーの上部には通常、インデックスとデータベースを含む.git/
ディレクトリがあります。インデックスは、変更がステージングされる場所です(git add
)。データベースにはプロジェクトの履歴が格納されます(コミットと参照がどこにあるか)。
特に、ブランチ(refの一種)はデータベースに存在し、それ以外は存在しません。 (インデックスと作業ツリーは "ブランチにチェックアウト"することができますが、それはブランチ自体に関係するものよりも作業ツリーのステータスです)。
私が観察しなければならないと思うのは、 (コミットせずに)別のブランチをチェックアウトし、変更はまだ存在します。これは作業ツリー上にあるためです。彼らはまだどの支店にも属していません。一般的に、ブランチをチェックアウトするには、gitに変更を適用する必要があります。もし変更がローカルに変更されたファイルに影響するなら、チェックアウトは拒否されます。チェックアウトが許可されていると、作業ツリーの変更が反映されます。これは紛らわしいかもしれませんが、これはあなたの便宜のためのものです。
あなたが別のブランチをチェックアウトすることができるように「道のうち、」ローカルの作業中に取得したい場合は、正確にそれがデータベース内にあるとして、あなたはどちらか
(1)使用することができますあなたはまた、使用することができます(git stash pop
で)後でそれらを取得することができ、そこから一時的なコミットにローカルの変更を配置するgit stash
、または
(2)独立したファイルシステムのパスに出
を他のブランチをチェックするgit worktree
を使用様々なオプティオnsにgit show
とgit diff
を指定して、特定のブランチのヘッドコミット(特に)を調べます。私は、これらのコマンドのgitのドキュメントを見直すことをお勧めします。
これは私があなたに感謝していたものでした! –
- 1. Git rebase/masterがブランチからマスターに変更されました
- 2. Gitリポジトリのmasterに対して古いブランチを更新する
- 3. Git - Masterブランチは別のブランチで作業しているときに更新されます
- 4. git: 'dev'ブランチからのファイルで 'master'ブランチを更新するには?
- 5. Longlistselectorは自動的に自動更新されますか?
- 6. gitブランチコマンドにmasterブランチがリストされていない
- 7. Netflix Turbine - サーバーポートが自動的に-1に更新されます
- 8. Django:通知が自動的に更新されます
- 9. nhibernateが自動的に更新されます
- 10. グーグルアースプラグインが自動的に更新されます
- 11. Git masterブランチから別のブランチにフォルダをコピーします
- 12. Gitフック:ブランチがマージされるとJIRAステータスが更新されます
- 13. gitのmasterブランチに変更を加えずにブランチをマージするには?
- 14. git masterブランチからコードを一時的に削除する
- 15. Git Master Branch先に破棄されたブランチ
- 16. `git pull origin master 'をチェックアウト機能ブランチに入れます
- 17. 自動更新Gitスクリプト
- 18. Travis CIからgit masterブランチにプッシュ
- 19. ! [リモートで拒否されました] master - > master(ブランチは現在チェックアウトされています)gitのエラー
- 20. C++が自動的に新しいバージョンに更新されます
- 21. 2 gitブランチを自動的にマージするスクリプトですか?
- 22. git merge to masterブランチを防止する
- 23. ファイル名を変更するとマクロが自動的に更新されます
- 24. git repoの更新されたブランチを取得するには?
- 25. プルリクエストは自動的に更新されますか?
- 26. 更新日は自動的に表示されますか?
- 27. フラグメントがクリック時に自動的に更新されない
- 28. `git --git-dir/path/to/git pull/path/to/other/bare-git master`は、作業ツリーを自動的に更新しません。何故なの?
- 29. マージ後のgitブランチをマスターに自動的に削除
- 30. 新しく作成されたブランチにgit switchを自動的に作る方法は?
私はマスターをチェックアウトして、firstbranchに戻るのを忘れたと思います。 – eftshift0
変更が 'master'ブランチにあることをどう知っていますか?特に何もコミットしなかったので? – axiac
あなたは正しいブランチにいると確信していますか? 'git log --graph --oneline --decorate --all'を実行し、HEADがどこを指しているかを教えてください。 – Makoto