私は自分のリポジトリをテストするために多くのコミットをしました。今私はデータ損失なしで私の履歴を修正したい。私の歴史は次のようになります。データを失うことなくgit commit historyを修正するには?
A -> B -> C -> TEST D -> TEST E
しかし、それはこのようになります。
A -> B -> C (C + TEST D + TEST E)
私はそれをどのように行うことができますか? rebase
またはstash
は私を助けますか?
UPD [OK]を、これは私の歴史をコミットしている:
commit 9f2c2e66d344aa27a5e681eb64c84738f2cd1d49
Author: babobka <[email protected]>
Date: Sat Jan 14 23:35:36 2017 +0300
Fixed files
commit 9ab55a4e4352daa9e5c27e9243d79a8c14dd6551
Merge: b52872c 856ee3f
Author: bbk <[email protected]>
Date: Sat Jan 14 23:29:16 2017 +0300
Merged in develop (pull request #1)
New tests. New project structure. FindBugs plugin.
commit 856ee3fb4725564c1c5c976eacadb6e21aa2b937
Author: babobka <[email protected]>
Date: Sat Jan 14 23:24:02 2017 +0300
New tests. New project structure. FindBugs plugin.
commit b52872c300bde67154cec3b732755a47f9ff76cd
Author: babobka <[email protected]>
Date: Mon Jan 9 23:36:02 2017 +0300
Very big refactor.Can not remember what was done.
commit 0b330267150db40fb814bfc21387762d80a99e44
Author: babobka <[email protected]>
Date: Tue Jan 3 01:13:05 2017 +0300
First commit
私はgit rebase -i 9ab55a4e4352daa9e5c27e9243d79a8c14dd6551 -m 'Rebasing'
を作ったが、私はすべての変更を見ることができません。それと同じ歴史。
私の最後のXがGitを使用してコミットする可能性があります(http://stackoverflow.com/questions/5189560/squash-my-last-x-commits-together-using-git) – acm
私が理解していることはあなたは最後のいくつかのコミットを1つに「スカッシュ」したいですか?これが役立つかどうかを確認してください。http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html – sinanspd
リベースインタラクティブモードの設定を編集していますか?あなたはいくつかの言葉をスカッシュに変えていますか? – oklas