2017-08-23 3 views
0

私はブランチ開発を持っています。私はそれから新しい枝Xを作成し、いくつかの変更を加えた後、X、ブランチYから新しいブランチを作成しました。このブランチでは、names of variablesの大きなリファクタを作成しました。リファクタリングの後、私はブランチYからXにプルリクエストを作成し、それをマージしました。それから私はブランチXをいくつか変更してから、プルリクエストを作成し、ブランチXを開発に統合しました。ブランチYを元に戻すことはできますか?これらの30個のファイルは名前のリファクタで変更されていますか?はいの場合、どうすればいいですか?結合されたプル要求の後に元に戻す

デモンストレーション:

Demonstration picture

+0

30個のファイル名を30個に変更しましたか、30個のファイル内にいくつかの変数名を変更しましたか? –

+0

2番目のオプションでは、30個のファイルの中のいくつかの変数の名前を変更しました。 – cerbin

答えて

2

あなたが名前の変更をしたしたYにコミット元に戻す試みることができる:

git revert <SHA-1 of Y commit 

これは完全に含めた、コミットそのYに起こったことすべてを元に戻す必要があります変数名の変更。

developmentに戻すコミットハッシュを見つけるには、単純なオプションの1つにgit logを使用するだけです。最も最近のものから以前のものへのコミットの一覧が表示されます。

+0

それから何?ブランチYの変更を元に戻した後、私はコミットするためにいくつかの変更を行い、コミットしてプッシュし、それをブランチXに、そしてブランチXを開発にマージします。 – cerbin

+0

'git revert'をコミットすると、すべての変数名を変更した' Y'に行ったコミットのミラーイメージのような_new_ commitを追加します。 –

+0

だから私はgit revertをやると、新しいコミットが得られます。これを開発に押し込めば、ブランチYに統合されたブランチYからのすべての変更がブランチXに変換され、開発されます。すべてを考慮に入れて、これらの変更の後で、私は名前の変更された変数のリファクタを使ってブランチ開発を行いますか?そして私が開発時とブランチYで同じファイルを変更した場合、いくつかの競合が発生する可能性がありますか? – cerbin

関連する問題