2

戻ってコミットの内容を変更する必要があるローカルリポジトリがあります。これを行う必要があるのは、コミットで削除されたファイルをコミットに追加したためであり、それは結局やりたいことではありません。元の名前で保存したいです。

次の説明は、ローカル リポジトリ用に開発ブランチからローカルに作業しています。

最初のコミットは、Laravel 5.2 のデフォルト インストールのすべてのファイルでした。私は常に .env.example ファイルを .env に変更するように言われてきましたが、私が気付いていなかったのは、このファイルをそのまま含めることも良い考えです。アプリケーションに含める必要がある変数。

2 回目のコミットでは、ファイルの名前を .env に変更しましたが、開発ブランチの場合は、ファイルを開発ブランチに保持したいと考えています。

その 2 番目のコミットに戻って、そのファイルを削除したという事実を削除するにはどうすればよいですか?

4

2 に答える 2

0

最新のコミットを変更するには

git commit --amend

以前のコミット、および/または複数のコミットを変更するには

git rebase

これらはどちらも他の場所で十分に文書化されており、簡単に検索するかgit help、文書を表示します。

于 2016-02-21T18:04:44.027 に答える
0

では、ファイルが呼び出されfilename、それを削除したコミットがabc123. 次を実行しますgit rebase -1 abc123~。これにより、エディターがポップアップし、 で始まるすべてのコミットが表示されますabc123。最初の行で、"pick" を "edit" に変更し、エディターを閉じます。Git は再生abc123してから停止します。その時点で、 でファイルを回復しgit checkout head~ -- /path/to/filename、 でコミットを修正しgit commit --amend -C headます。その後、Git は残りのコミットを再生します。問題はありません。

于 2016-02-21T18:01:24.383 に答える