web-dev-qa-db-ja.com

切り離されたHEAD Issue in Android Studio

Android Studioを初めて使用し、NavigationDrawerアプリの開発を開始しました。

コミットを間違えた後、バージョン管理の「チェックアウトリビジョン」をいじってみましたが、「デタッチされたHEAD」が原因でプロジェクトをGithubにプッシュできなくなりました。

この問題を解決するにはどうすればよいですか?私のアプリはエミュレーターで完全に正常に動作します。

ありがとう

12
Adam Arcaro

[VCS]メニュー、[Git]、[ブランチ]の順に移動し、[Gitブランチ]ダイアログでローカルブランチの下の項目をクリックしてから、ブランチをチェックアウトして、デフォルトのブランチを受け入れます。プロジェクトをデフォルトのブランチに接続し、プロジェクトをコミットできます。

6
Meysam Hadigheh

デタッチドヘッドを取り除くには、この問題が発生する理由を知る必要があります。プロジェクトをローカルでコミットするだけでプロジェクトを数回(またはアトラスを2回)マージするため、その表示は切り離されたヘッドです。 あなたがする必要があるのは、プロジェクトをマージするたびに、ローカルだけでなくサーバーブランチにもコミットすることです。これは私のようにあなたの問題を解決します。

0
Naveen Kumawat

Gitで「切り離されたヘッド状態」にある場合は、ブランチ上にない過去のコミットに従って現在履歴を表示していることを意味します。あなたの目標が何であるかに基づいて、いくつかのことが起こる必要があります。

現在チェックアウトされているバージョンでコードを続行したい場合は?その場合は、最後に行われたコミットに戻ってチェックアウトし、git revertまたはgit resetのどちらか意味のある方で履歴を元に戻す必要があります。

最新のコミットに戻って通常どおりに作業を続けたい場合は、git checkout <newest SHA>はまったく問題なく機能します。

0
Briana Swift

すでに多くの変更を加えてコミットしてオンラインでプッシュしたいが、突然この切り離されたヘッドの問題が発生した場合は、Android Studio:

  1. VCS-> Git-> Branches ..に移動します。
  2. + New Branchをクリックし、一時的な名前を入力します。
  3. 次に、変更を新しいブランチにコミットします(新しいブランチがオンラインで作成されるため、まだプッシュしないでください)。
  4. もう一度VCS-> Git-> Branches ...に移動し、ヘッドが切り離された前のブランチ(ローカル)を選択して、チェックアウトブランチをクリックします。
  5. もう一度VCS-> Git-> Branches ...に移動し、新しく作成されたブランチ(ローカル)を選択して、[現在にマージ]を選択します。
  6. マージが成功したら、コードが最新のものかどうかを再確認してください。これで、ヘッドの問題を切り離すことなく、ブランチ(以前に問題が発生した)をプッシュできます。この時点で[コミット]をクリックすると、最新の変更がマージされているため、コミットするものは何もありません。あなたがする必要があるのはただオンラインでプッシュすることです。これにより、この問題を修正するためだけにオンラインで新しいブランチを作成できなくなります。
  7. クリーニングの目的で、ブランチをオンラインでプッシュできたら、新しく作成したブランチ(ローカル)をもう一度選択して、[ブランチの削除]をクリックします。
0
Cousin Roy