安価なので、毎日のWIPスナップショットを保存するのにcommit
を使用します。だから、私のコミット履歴には、多くのスナップショットコミットといくつかの重要なコミットが混在しています。git rebase -iでNEXTコミットに融合するベストプラクティスは?
リモートリポジトリに自分の仕事をプッシュする前に、キーコミットだけを含むように自分の履歴をクリーンアップして、スナップショットのコミットをそのままキーコミットに従うように感じるかもしれません。重要なコミットの日付情報は、いつ、私が何を変えたかを思い出すので、私にとって重要です。
git rebase -i
のスカッシュ/フィックスアップコマンドを使用すると、いくつかの助けになるかもしれませんが、PREVIOUSコミットに融合し、著者の日付は私が望むものではありません。
コミットを並べ替えると、頻繁にスクラッシュが発生するため、不要な競合が発生することがあります。これも避けたいものです。
So.私の欲望を満たすベストプラクティスは何ですか?
torekの答えに触発され、[更新] 2016年7月3日
、私は解決策を考え出した:いつものようにgit rebase -i
を使用し、目標を設定するには、git reset HEAD~n
どこを実行して、私は以前のコミットはedit
ににメルドすることをコミットnは、私が融合したい先のコメントの数です。 git rebase --continue
で残りの作業を終え、その後
% git commit --amend --date "$(grep DATE .git/rebase-merge/author-script | cut -f2 -d '=')"
:とと融合し、変更をコミットします。
句「毎日WIPスナップショット」について:I(および他の多くの)あなたは[早期コミット]することをお勧めします( //blog.codinghorror.com/check-in-early-check-in-often/)、[Commit Often](// sethrobertson.github.io/GitBestPractices/#commit)。生産的な稼働日には、少なくとも* 12ダース以上のコミットがあります。 –
はい、サイトの内容に同意します。私はチーム開発のために働く前に同様のやり方をしました。 –