web-dev-qa-db-ja.com

git rejected早送り以外のプッシュ

私はgitにかなり慣れていないため、過去2か月間小規模なサイドプロジェクトに取り組んでおり、問題なく問題をbitbucketにプッシュしていました。数日前、(Linux OSを再インストールする必要があったため)プロジェクトフォルダを圧縮し、Linux OSの再インストール後にこれを解凍しました。

それで、今、私は自分のプロジェクトフォルダーに行き、幸福に働き続け、ついにそうしました:

git add -A && git commit -m "modified code" && git Push Origin master

..これは私が通常行うことです。

そして私は得る:

To https://[email protected]/johnsproject/proj.git
! [rejected]        master -> master (non-fast-forward)
error: failed to Push some refs to 'https://[email protected]/johnsproject/proj.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git Push --help' for details.

私はいくつかのSO質問を見て、強制フラグの使用を示唆しています-f-しかし、これを行うべきかどうかはわかりません。

pS:私はマスターブランチにいます-これは私のリポジトリのonlyブランチです。

誰かが私をここで正しい方向に向けることができれば本当に感謝します。

ありがとう。

15
JohnJ

中央リポジトリには、プッシュする前にプルする必要のある変更があります。行う

git add -A
git commit -m "my local changes" 
git pull

競合を解決します。 その後する

git Push

または、ローカルに貴重な変更がない場合は、リポジトリの新しいクローンを作成し、そこから作業を開始できます。

git clone https://[email protected]/johnsproject/proj.git new_repo_dir
22
Klas Mellbourn

やってみる

git pull Origin master
git add -A
git commit -m "modified code"
git Push Origin master

ローカルリポジトリがリモートリポジトリと同期していない可能性があります。

10
Ganye

私も同じ問題を抱えていました。更新を強制するgit Push -fコマンドを使用して修正しました。

6
Marcell Almeida

私の場合、gitリポジトリからの新しいファイルが追加されておらず、これが解決策でした1. gitステータス(確認のためだけ)2. git add。 3. git push -u master Origin

0
SystemDZ

私のために働くgit Push --set-upstream Origin master -f

0
Feno Ortocus

Git pullを試すことができます。その後、スタジオでgit commitを実行し、その後git Push Originブランチ名を入力します。

0
Hanna Kogut