0

いくつかのオープンソースのブログソフトウェアでgitcloneを実行してから、ローカルマシンに。という名前のブランチを作成しましたmyblog。そのため、githubにプッシュしたところ、できませんでした。

git remote add origin https://github.com/Me/myrepository.git

なぜなら、私がクローンした起源はすでに存在していたからです。

したがって、私はしました

git remote add myblog  https://github.com/Me/myrepository.git

'myblog'は私のブランチの名前なので、必要なかったかもしれません。私が言った指示をプッシュするためにあなたをプッシュするために

 git push origin master 

しかし、私は原点に向かってプッシュしていなかったし、マスターをプッシュしていなかったので、

   git push myrepository myblog

しかし、「myrepository」はgitリポジトリではないようだと書かれていました。それから私はしました

git push myblog myblog

最初の「myblog」はリポジトリ用で、2番目は私のブランチ用でした。このプッシュは機能しました。実際のアプリは私のgithubアカウントにあります。私はそれを見ることができます。ただし、git clone(つまり、プッシュしたアプリ)を実行しようとすると、これ(画像に表示されているもの)が自分のマシン(ブログアプリではない)のディレクトリにコピーされました。

ここに画像の説明を入力してください

自分のマシンのgithubリポジトリにあるブログソフトウェアのクローンを作成できません。私が物事を理解しようとしていたので、私もしたことを知ることも重要かもしれません

git push -u myblog

そしてそれは言った

! [rejected]        master -> master (non-fast-forward)

私の質問:アプリが実際に私のgithubアカウントにあるのに、なぜそれ(画像に表示されているもの)をコンピューターの私のディレクトリにコピーするのですか?そして、これを修正する方法はありますか?

4

1 に答える 1

0

githubにリポジトリを作成するmasterと、READMEを内部に持つブランチが作成されました。ブランチをプッシュすると、サーバー上にブランチmyblogが作成され、ブランチはそのままになります(まだREADMEだけです)。myblogmaster

その後、ローカルmasterブランチを変更して、削除ブランチに直接関連しなくなったようですmaster(したがって、早送りではないメッセージです)。古いコンテンツを忘れたい場合はmaster、gitにサーバーのバージョンをで上書きさせることができますgit push -f

ブランチを指定しない場合push、デフォルト(git 2.0で変更される)は、一致するすべてのブランチをプッシュすることです。したがって、とは両方ともmyblogプッシュmasterされます(ローカルリポジトリとリモートリポジトリの両方に存在すると仮定します)。プッシュするだけで、myblogとの競合を気にしないmaster場合は、名前を指定できます。つまり、git push myblog myblog

または、デフォルトのプッシュ動作を(git 2.0の新しいデフォルト)に切り替えることができますsimple。これにより、現在のブランチがプッシュされます(名前がローカルとリモートで一致すると仮定)。でこれを行いgit config push.default simpleます。

于 2013-01-24T21:24:18.813 に答える