それが実際に実行したコマンドの正確なシーケンスである場合は、現在の場所を理解するのに役立ついくつかのコメントを次に示します。
$ git init
(新しいマシンなどで) 空のディレクトリを入力したように見えるため、現在のディレクトリから新しいリポジトリが作成されます。このリポジトリにはオブジェクトがなく、master
ブランチもまだなく、コミットもありません...
$ git remote add origin https://github.com/myco/myproj.git
これにより、オリジン リポジトリが追加されますが、問題はありません。
$ git pull (this downloads lots of files)
これは 2 つのことを行います -リポジトリには現在あるが、ローカル リポジトリにはないgit fetch
すべてのオブジェクト、ブランチなど (つまり、現在空のリポジトリにいるためすべて) を収集し、その後に. フェーズはここで失敗するはずで、「何をマージしたいか教えてくれなかったので、マージしません」というメッセージが表示されます。origin
git merge
merge
$ ls (no files)
右。まだ何もチェックアウトしておらず、git merge
上記が失敗したため、作業ディレクトリを更新するまでには至りませんでした。
$ git branch --set-upstream master origin/master
ここで、上流であり、開始点であるmaster
ブランチを作成しています。origin/master
ただし、これはブランチをチェックアウトしないため、作業ディレクトリは以前と同じ状態、つまり空のままになります。
$ ls (no files)
まだ何もチェックアウトしていないので、これは予期されたものです。
$ git status ( shows all the files are marked for deletion! )
git
空の作業ディレクトリとそこにあるはずのものを比較し、すべてを削除したに違いないと判断します。
あなたが本当にやりたかったことはこれです:
$ cd directory/where/you/want/your/repository
$ git clone https://github.com/myco/myproj.git
$ cd myproj
次に、追加のプロジェクト構成ファイルを所定の場所にコピーします。
本当にすべて手動で行いたい場合は、git fetch
代わりに を使用し、行のgit pull
後にa を実行します(または行の代わりに実行します。これにより、ファイルをチェックアウトする前に暗黙的にブランチのセットアップが行われます)。git branch ...
git checkout master
git checkout -b master origin/master
git branch ...