1. ホーム
  2. コード管理
  3. ギット

[gitコミット失敗の解決] 現在のブランチの先端が後ろにあるため、更新が拒否されました。

2022-01-21 17:54:26
<パス

github リポジトリを作成したところ、コードをプッシュするときにエラーが発生しました。

$ git push -u origin master
To [email protected]:******/Demo.git
 ! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to '[email protected]:******/Demo.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.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

これはリモートリポジトリと自分のローカルリポジトリが競合していることが原因で、リポジトリを作成した後、githubのリポジトリページでREADME.mdファイルの作成ボタンをクリックしてドキュメントを作成しましたが、ローカルにプルしていませんでした。そのため、バージョン競合の問題が発生しました。

これにはいくつかの回避策があります。

1. 強制プッシュ方式を使用する。

$ git push -u origin master -f

この場合、リモートの変更が失われる可能性があり、特に複数の人が共同で開発を行っている場合には、一般的に望ましくありません。

2. プッシュする前に、リモートリポジトリの変更をプルする

$ git pull origin master
$ git push -u origin master

3. リモートとローカルの変更をマージしたくない場合は、まず新しいブランチを作成します。

$ git branch [name]

次にプッシュ

$ git push -u origin [name]

不正なgitコミットの手順。

git init //initialize the repository
git add . (file name) //add files to the local repository
git commit -m "first commit" //add file description information
git remote add origin + remote repository address //Link the remote repository and create a master branch
git push -u origin master //Push files from the local repository to the remote repository

  • 1
  • 2
  • 3
  • 4
  • 5

正しい手順です。

git init //initialize the repository
git add . (file name) //add files to the local repository
git commit -m "first commit" //add file description information
git remote add origin + remote repository address // Link the remote repository and create a master branch
git pull origin master // Update files from the remote repository to the local repository
git push -u origin master // Push the files from the local repository to the remote repository

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

=====================================================================
2021年4月21日更新
gitのアカウントとパスワードを変更する方法
無関係な履歴のマージを拒否されないようにする方法
OpenSSL SSL_connect の解決方法。github.com:443 への接続時に SSL_ERROR_SYSCALL が発生する。