web-dev-qa-db-ja.com

この文脈で「致命的:あなたはまだ生まれていないブランチにいる」とはどういう意味ですか

私はsvn repoをgitに移行していました。私はクリーンな一時ディレクトリを作成し、git svn initを使用してそこに物を入れ、リモートを追加してプッシュしました。ここで、他の実際のソースディレクトリ(svnからデータをコミットする前に空のリポジトリからクローンを作成しました)でフェッチを実行しました。そして、私はチェックアウトをして、上記のメッセージを得ました。しばらくして、プルでソースを取得できると考え、それを行いました。私の質問は、そのコンテキストでそのエラーメッセージが何を意味していたのですか?特定のエラーメッセージが表示されたのはなぜですか。免責事項:私はGit初心者です

22
Osada Lakmal

リモートの参照とコミットのみをフェッチするフェッチでは、ローカルmasterブランチがチェックアウトに渡されなかったためだと思います。空のレポにいたので、ブランチに行ったことがないので、git checkoutにはmasterブランチがありませんでした。

git checkout Origin/masterで明示的に名前を付けることにより、リモートマスターを直接チェックアウトできますが、これによりヘッドが切り離された状態になります。

プルを実行すると、プルされたandマージされ、プルによってローカルmasterが作成され、リモートマスターが追跡されます。

12
Andy

Svnをgitに移行しようとして同じエラーが発生しました。ここに私の修正がありました。

Gitリポジトリを初期化したことを確認します。

git init

実際にsvnからの有効な移行があったことを確認してください:

git branch --remote

#You should see this output:
#git-svn

分離したヘッドを作成します。

git checkout git-svn

デタッチされたヘッドをマスターブランチに変換します。

git checkout -b master

この時点で、gitリポジトリは正常に機能します。

1
Luke Dupin