0

サーバーでリポジトリを作成しました。自宅のコンピューターで引っ張った。今、私は変更を行い、それらは機能しています。サーバーにプッシュする必要があります。Git はプッシュを拒否しました。サーバー内のファイルを更新するにはどうすればよいですか?

$ git push
To ssh://erkin@mornehir.com/~/erkin
 ! [rejected] master -> master (non-fast-forward)
 error: failed to push some refs to 'ssh://erkin@mornehir.com/~/erkin'
 To prevent you from losing history, non-fast-forward updates were rejected
 Merge the remote changes before pushing again.
 See the 'Note about fast-forwards' section of 'git push --help' for details.
4

2 に答える 2

1

ホームリポジトリからクローンを作成した場合は、リモートが設定されていることを確認してください。したがって、ホームリポジトリでは次のようになります。

git remote add origin <url/file path to your other repo>

これで、次のようにプッシュできるはずです:

git push -u origin master

-u は、後でプッシュできることを確認します

git push

クローンを作成して裸のレポを作成しなかった場合は、もう一度やり直して、今回は裸のオプションを含めます。

git clone --bare <file path or url to your home repo>

これにより、警告なしでプッシュできるようになります。裸でないレポには作業ディレクトリがあり、それが外部の力によって変更されることを好みません。

お役に立てれば

于 2011-06-08T18:13:51.847 に答える
0

このエラーは基本的に、ローカル リポジトリの履歴にリモート リポジトリの履歴が含まれていないことを意味します。試す:

 git pull

...そして、もう一度押してみてください。

于 2011-06-09T09:01:15.573 に答える