2016-12-15 4 views
1

昨夜私はコミットしてgithubリポジトリのマスターにいくつかの変更を加えました。私は(ちょうど確かに)確認し、変更はそこにあった。投稿はhttps://github.com/url_sample/commits/masterにも表示されていました 今日、私は別のチームメンバーがいくつかの変更をプッシュしていることがわかります。ここの変わった部分は、このバージョンですべての変更が失われただけでなく(結局変わっていない)ということです。リポジトリの履歴のように、私の貢献をどこでも見つけることができません。私のgithubを押してもらったのです

成功したプッシュが単に消える方法はありますか?

+0

あなたはこれらのキーワードの組み合わせを検索することができます:「gitのをプッシュフォース "と答えを得るでしょう。 –

答えて

1

他の開発者がchanges/commitsを引っ張っている場合。コミット(hard reset)を元に戻し、次にforce push to remoteを元に戻します。シナリオは次のとおりです。

$ git checkout master 
$ git pull origin master 

$ git reset --hard HEAD~1   # undo last commit 
$ git push -f origin master  # replace remote/master with local/master 
0

あなたも行うことができますプッシュ強制するにはリモートリポジトリに

git push -f <remote> <branch> 

をローカルの変更をプッシュ強制するには:

git push <remote> <branch> -f 
git push origin master -f # Example 

git push <remote> -f 
git push origin -f # Example 

git push -f 

git push <remote> <branch> --force-with-lease 
関連する問題