2016-08-05 8 views
2

SCSSファイルがたくさんあるプロジェクトで、いくつかのSCSSリファクタリングを行っています。Gitワークフロー:反復コミットメッセージを避けながらブランチをマージする

私のアプローチは、各SCSSファイルリファクタのための新しいブランチを作成することです。

は例えば、私は私が(Chicken.jsxChicken.scssそしておそらくいくつかの他のファイルを伴うだろう)と、変更をコミットリファクタリングを完了し、それにscss-lint-refactor-chickenとチェックアウトと呼ばれる新しいブランチを作成します。

次に、masterにチェックアウトし、ブランチをマージします。

マスターブランチは、このような歴史を持つ終わる:

* 75d48b2 - (7 minutes ago) Merge branch 'scss-lint-refactor-chicken' - Rory Smith 
|\ 
| * 9ea664f - (9 minutes ago) SCSS lint refactor chicken - Rory Smith 

私の質問は以下のとおりです。

  1. は、このような仕事のためのバージョン管理のためのワークフローには良いアプローチですか?
  2. 基本的に同じことを異なる方法で2つのコミットメッセージが得られないように、プロセスを最適化するにはどうすればよいですか?
+0

あなたが探しているものは_rebase_です。 [マージとリベース](https://www.atlassian.com/git/tutorials/merging-vs-rebasing)を参照してください。 –

答えて

1
  1. はい、それはバージョン管理システムを使用するための良い方法ですので、あなたは後ろに自分の仕事を残したり、同じリファクタリングのための2つ以上のコミットを持つことができます。

  2. マージメッセージを恐れないでください。彼らはあなたの友人です。あなたがコミットをいくつか持っているので、Gitは遅くなることはありません。あなたは、彼らはあまりにも多くのあなたのgitのログを汚染思われる場合は、それらを隠す:

    git log --no-merges 
    
1

また、

は、あなたは、あなたのブランチ上にあるときgit rebase masterを実行して、あなたのmasterブランチからgit merge <branch>を実行することができます。これにより、mergeのコミットが削除され、コミット履歴が少しきれいになる可能性があります。

関連する問題