1

特定のファイルを削除してソース ディレクトリを変更し、commit. そして、push origin masterリモートホストであるgithubにアクセスしました。

今、私は適切に機能するためにこれらのファイルが必要であることを知りました. commitここで、前のページに戻ってpushリモート ホストに戻る方法が必要です。

そうすることは可能ですか?私はgitに非常に慣れていないので、混乱しています。

前もって感謝します。

4

4 に答える 4

5

git revert1 つ以上の以前のコミットを元に戻す新しいコミットを作成します。これは通常、すでにプッシュされたコミットを元に戻すための最良の方法です。

たとえば、次のコマンドは、コミットからabc1234最新のコミットまでのすべてを元に戻します ( HEAD):

git revert abc1234..HEAD

も使用できますgit resetが、このコマンドは履歴を変更し、リポジトリを使用している他のユーザーに問題を引き起こす可能性があります。一般に、このコマンドは、プッシュされていない変更を破棄したい場合にのみ使用する必要があります (そして、将来戻ってきたくないことが確実な場合)。

于 2012-08-01T07:10:14.683 に答える
5

すでにプッシュしているので、Nikhil のソリューションに反対することをお勧めします。最新のコミットで「git revert」を実行してgit revert HEADからプッシュすることをお勧めします。このrevertコマンドは、指定されたコミットの効果を元に戻し、それをリポジトリに追加する新しいコミットを作成します。

于 2012-08-01T06:31:20.377 に答える
2

これらを試着して、

git reset --hard SHAsumOfYourCommit
git reset --hard HEAD [your current head point]
git reset --hard HEAD^ [your previous head point]

または、最後のコミットを削除できます

現在コミット dd61ab32 を指しているブランチ マスターを持つリモート myrepo があるとします。コマンドを使用して、最後のコミットを削除できます。

git push myrepo +dd61ab32^:master
于 2012-08-01T06:25:10.087 に答える