官方文档有句话“切换分支的时候最好保持一个清洁的工作区域。”,不知道我的理解是不是正确的。如果你当前分支有修改,但是还没有commit,如果你要切换分支的话,最好就是把内容都commit了?还是只用add到暂存区,下次回来可以继续。
大家讲道理2017-04-21 11:18:00
git stash を使用して一時的に保存し、元に戻すときに git stash apply を使用して変更を再取得することをお勧めします。切り替えるときにクリーンな作業ディレクトリを提供します:)
巴扎黑2017-04-21 11:18:00
以下のようないくつかの処理方法があります:
1. 現在のブランチを追加してコミットし、チェックアウトしてコミットします
2. 追加しますが、コミットはできません。スタッシュしてからチェックアウトしてスタッシュを適用し、コミットして現在のブランチにコミットすることができます
3. 追加しますが、コミットやスタッシュは行わず、直接チェックアウトしてからコミットすると、レコードは switch ブランチの下に置かれます。
その背後にある理由: ローカル git リポジトリにはワークエリアとステージングエリアが 1 つだけありますが、複数のブランチ送信エリアがあり、チェックアウトは HEAD ポインターを 1 つのブランチから別のブランチに切り替えるだけです。
怪我咯2017-04-21 11:18:00
現在のブランチが変更されているがまだコミットされていない場合、ブランチを切り替えたい場合は、すべての内容をコミットするのが最善ですか?
いいえ、変更は必ずしもコミットの準備ができているわけではないため、実際の状況に応じて、 git stash を使用して変更を一時的に保存したり、コミットして新しい送信を生成したり、 git checkout -f を使用してブランチを強制的に切り替えることができます。
怪我咯2017-04-21 11:18:00
コミットやブランチの切り替えはなく、現在のファイルはバッファー内にあります。
現在の Git バージョンにはコミットされていません。
任意のブランチでリセット、変更、コミットすることもできます。
テスト
リーリーPHP中文网2017-04-21 11:18:00
同じ名前の人がいない場合は、ステージングエリアにあるかどうかを切り替えることができます。切り替え後は、すべて通常通りの業務となります。
ただし、同じ名前のものが存在する場合、git は簡単に上書きされて操作できないことを通知します。